设置 docker api - 修改 docker.conf
Setting up the docker api - modification of docker.conf
我发现 video 关于设置 docker 远程 api 的 Packt 发布。
在视频中,我们被告知通过将 "-H tcp://127.0.0.1:4243 -H unix:///var/run/docker/sock"
添加到 DOCKER_OPTS=
来更改 /etc/init/docker.conf 文件。然后我们必须重新启动 docker 以使更改生效。
但是,在我完成所有这些之后,我仍然无法在该端口卷曲 localhost。这样做 returns:
vagrant@vagrant-ubuntu-trusty-64:~$ curl localhost:4243/_ping
curl: (7) Failed to connect to localhost port 4243: Connection refused
我是 relativity 的新手 docker,如果有人能帮助我,我将不胜感激。
编辑:
docker.conf
description "Docker daemon"
start on (filesystem and net-device-up IFACE!=lo)
stop on runlevel [!2345]
limit nofile 524288 1048576
limit nproc 524288 1048576
respawn
kill timeout 20
pre-start script
# see also https://github.com/tianon/cgroupfs-mount/blob/master/cgroupfs-mount
if grep -v '^#' /etc/fstab | grep -q cgroup \
|| [ ! -e /proc/cgroups ] \
|| [ ! -d /sys/fs/cgroup ]; then
exit 0
fi
if ! mountpoint -q /sys/fs/cgroup; then
mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroup /sys/fs/cgroup
fi
(
cd /sys/fs/cgroup
for sys in $(awk '!/^#/ { if ( == 1) print }' /proc/cgroups); do
mkdir -p $sys
if ! mountpoint -q $sys; then
if ! mount -n -t cgroup -o $sys cgroup $sys; then
rmdir $sys || true
fi
fi
done
)
end script
script
# modify these in /etc/default/$UPSTART_JOB (/etc/default/docker)
DOCKER=/usr/bin/$UPSTART_JOB
DOCKER_OPTS="-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock"
if [ -f /etc/default/$UPSTART_JOB ]; then
. /etc/default/$UPSTART_JOB
fi
exec "$DOCKER" daemon $DOCKER_OPTS
end script
# Don't emit "started" event until docker.sock is ready.
# See https://github.com/docker/docker/issues/6647
post-start script
DOCKER_OPTS=
if [ -f /etc/default/$UPSTART_JOB ]; then
"/etc/init/docker.conf" 60L, 1582C
EDIT2:ps aux | grep docker
的输出
vagrant@vagrant-ubuntu-trusty-64:~$ ps aux | grep docker
root 858 0.2 4.2 401836 21504 ? Ssl 06:12 0:00 /usr/bin/docker daemon --insecure-registry 11.22.33.44
:5000
vagrant 1694 0.0 0.1 10460 936 pts/0 S+ 06:15 0:00 grep --color=auto docker
问题
根据 ps aux|grep docker
的输出,可以注意到启动守护进程的选项与 docker.conf
文件中的选项不匹配。然后使用另一个文件启动 docker 守护程序服务。
解决方案
要解决这个问题,请找到包含选项 "--insecure-registry 11.22.33.44:5000
的文件,该选项可能 /etc/default/docker
或 /etc/init/docker.conf
或 /etc/systemd/system/docker.service
或 idk-where-else 并修改它相应地具有所需的选项。
然后重启守护进程就可以了!
我发现 video 关于设置 docker 远程 api 的 Packt 发布。
在视频中,我们被告知通过将 "-H tcp://127.0.0.1:4243 -H unix:///var/run/docker/sock"
添加到 DOCKER_OPTS=
来更改 /etc/init/docker.conf 文件。然后我们必须重新启动 docker 以使更改生效。
但是,在我完成所有这些之后,我仍然无法在该端口卷曲 localhost。这样做 returns:
vagrant@vagrant-ubuntu-trusty-64:~$ curl localhost:4243/_ping
curl: (7) Failed to connect to localhost port 4243: Connection refused
我是 relativity 的新手 docker,如果有人能帮助我,我将不胜感激。
编辑: docker.conf
description "Docker daemon"
start on (filesystem and net-device-up IFACE!=lo)
stop on runlevel [!2345]
limit nofile 524288 1048576
limit nproc 524288 1048576
respawn
kill timeout 20
pre-start script
# see also https://github.com/tianon/cgroupfs-mount/blob/master/cgroupfs-mount
if grep -v '^#' /etc/fstab | grep -q cgroup \
|| [ ! -e /proc/cgroups ] \
|| [ ! -d /sys/fs/cgroup ]; then
exit 0
fi
if ! mountpoint -q /sys/fs/cgroup; then
mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroup /sys/fs/cgroup
fi
(
cd /sys/fs/cgroup
for sys in $(awk '!/^#/ { if ( == 1) print }' /proc/cgroups); do
mkdir -p $sys
if ! mountpoint -q $sys; then
if ! mount -n -t cgroup -o $sys cgroup $sys; then
rmdir $sys || true
fi
fi
done
)
end script
script
# modify these in /etc/default/$UPSTART_JOB (/etc/default/docker)
DOCKER=/usr/bin/$UPSTART_JOB
DOCKER_OPTS="-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock"
if [ -f /etc/default/$UPSTART_JOB ]; then
. /etc/default/$UPSTART_JOB
fi
exec "$DOCKER" daemon $DOCKER_OPTS
end script
# Don't emit "started" event until docker.sock is ready.
# See https://github.com/docker/docker/issues/6647
post-start script
DOCKER_OPTS=
if [ -f /etc/default/$UPSTART_JOB ]; then
"/etc/init/docker.conf" 60L, 1582C
EDIT2:ps aux | grep docker
vagrant@vagrant-ubuntu-trusty-64:~$ ps aux | grep docker
root 858 0.2 4.2 401836 21504 ? Ssl 06:12 0:00 /usr/bin/docker daemon --insecure-registry 11.22.33.44
:5000
vagrant 1694 0.0 0.1 10460 936 pts/0 S+ 06:15 0:00 grep --color=auto docker
问题
根据 ps aux|grep docker
的输出,可以注意到启动守护进程的选项与 docker.conf
文件中的选项不匹配。然后使用另一个文件启动 docker 守护程序服务。
解决方案
要解决这个问题,请找到包含选项 "--insecure-registry 11.22.33.44:5000
的文件,该选项可能 /etc/default/docker
或 /etc/init/docker.conf
或 /etc/systemd/system/docker.service
或 idk-where-else 并修改它相应地具有所需的选项。
然后重启守护进程就可以了!