I want to access docker containers only locally behind the csf firewall on a remote Ubuntu server. I changed the DOCKER settings options in /etc/csf/csf.conf to 1 to allow docker to change iptable rules.
If I am starting my container with -p 8000:8000, the port 8000 is exposed to the whole world (I can access the website with mydomain.com:8000, as expected, but not what I wanted). If I am starting the container with -p 127.0.0.1:8000:8000 I can't access it with mydomain.com:8000 (which is great), but in both cases calling localhost:8000 will result in an ERR_EMPTY_RESPONSE error in Chrome or curl: (52) Empty reply from server in the terminal.
Tried it with different containers and different ports. After disabling csf, it works without the empty-reply-error so is must be related to csf.
How to configure csf to expose and access docker container over specific ports only locally?
Sidenote: I am working remotely on the server with ssh [email protected] -L 8000:localhost:8000.