Help Needed: Deploying Syslog and Prelude OSS on Docker

Hey everyone,

Hope you’re all doing well. I’m currently working on a project where I need to deploy both Syslog (Rsyslog) and Prelude OSS on Docker containers, and ensure they can communicate with each other and the internal network. I’ve got very little experience with Docker, but I’m running into a few issues.

Here’s the setup and what I’ve done so far:

  1. Host Environment: Ubuntu Server
  2. Syslog Testing: Initially, I tested Rsyslog directly on an Ubuntu server and successfully sent logs to Prelude OSS on a CentOS machine.
  3. Docker Setup: I aim to have both Rsyslog and Prelude OSS in separate containers on the same host.

Steps I’ve Taken:

  1. Installed Docker on the Ubuntu server and ensured all packages are updated.
  2. Pulled the Rsyslog image from Docker Hub but found the configuration different from the Ubuntu repository version. So, I removed it.
  3. Decided to pull the Ubuntu image and manually install Rsyslog within the container.

Issue:
When running the Ubuntu container with specified ports, Docker doesn’t seem to allow the ports I’ve specified.

Here’s the command I used:

docker run -it --privileged --name ubuntu-container --network macvlan_net --ip 192.168.110.197 -p 22:22 -p 514:514/udp ubuntu /bin/bash

Despite this, the ports don’t seem to be available as expected.

Questions:

  1. Is there a better approach to setting up Rsyslog and Prelude OSS in Docker containers?
  2. Are there specific configurations or steps I might be missing in ensuring the ports are properly mapped and accessible?
  3. Any recommendations on the best practices for this setup?

Thanks in advance for your help!

Best regards,
Moussa


How do you come to that conclusion?