Collectives™ on Stack Overflow
Find centralized, trusted content and collaborate around the technologies you use most.
Learn more about Collectives
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Learn more about Teams
net.ipv4.tcp_keepalive_time=300 \
net.ipv4.tcp_keepalive_intvl=60 \
net.ipv4.tcp_keepalive_probes=9
in a docker container.
When log into to the container directly and execute the command, I get the following error
sysctl: cannot stat /proc/sys/net/ipv4/tcp_keepalive_time: No such file or directory
sysctl: cannot stat /proc/sys/net/ipv4/tcp_keepalive_intvl: No such file or directory
sysctl: cannot stat /proc/sys/net/ipv4/tcp_keepalive_probes: No such file or directory
Then I found out the --sysctl option in docker run
in here
But I did not find the equivalent option via docker-compose.
I have few services that start by default so using docker run instead of docker-compose is not an option for me.
Anyone knows of a way to supply --sysctl options to the container via compose?
This option is now available in docker-compose 1.10.0-rc1, you'll need to upgrade to that version (pip install docker-compose==1.10.0-rc1
) and also update your docker-compose.yml
file to version 2.1 per docs
Example docker-compose.yml:
version: '2.1'
services:
build: .
sysctls:
- net.ipv6.conf.all.disable_ipv6=1
–
docker-compose lacks many of the CLI options. In general, you have to head over to the github issues for compose and search there. In the case of sysctl
, it's in the process of being added. Someone has made a branch with the addition. You could start with that until it gets added to the master branch.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.