Set Docker_Opts in centos

后端 未结 12 1707
我在风中等你
我在风中等你 2021-01-31 04:44

I need to set docker to listen to tcp://0.0.0.0/4243 on my host machine running amazon linux (centos). All the documentation I have seen has told me to run the following command

12条回答
  •  悲哀的现实
    2021-01-31 05:29

    For CentOS 7 (RHEL 7):

    Find the systemd docker.service unit file. Mine is located at: /usr/lib/systemd/system/docker.service

    In this file, edit the line in the [Service] section beginning with ExecStart=. Add the "-H tcp://0.0.0.0:4243" into the line. (notice there's no "=" between the -H and the IP address as in your example DOCKER_OPTS line above.)

    On my system, the entire contents of docker.service then looks like:

    [Unit]
    Description=Docker Application Container Engine
    Documentation=http://docs.docker.com
    After=network.target docker.socket
    Requires=docker.socket
    
    [Service]
    Type=notify
    EnvironmentFile=-/etc/sysconfig/docker
    ExecStart=/usr/bin/docker -d -H tcp://127.0.0.1:4243 -H fd:// $OPTIONS
    LimitNOFILE=1048576
    LimitNPROC=1048576
    
    [Install]
    Also=docker.socket
    

    (I only need Docker to listen on the loopback, instead of all IP addresses.)

    After making this edit to the systemd unit file and restarting the Docker service via systemctl restart docker, I see the following process:

    root 8574 0.0 0.2 321708 10564 ? Ssl 00:42 0:00 /usr/bin/docker -d -H tcp://127.0.0.1:4243 -H fd:// --selinux-enabled

    As you can see, it does now listen on the configured TCP address, and will persist over reboots and service stop/starts.

提交回复
热议问题