我的出发点是:
-
如何使用docker Remote api创建容器?,
所以我编辑/etc/init/docker.conf
并更新 2 次出现的DOCKER_OPTS变量为:
DOCKER_OPTS='-H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock'
然后,列出 docker 镜像的简单测试失败:
$ service docker restart
$ curl -X GET http://10.143.0.218:4243/images/json
curl: (7) Failed to connect to 10.143.0.218 port 4243: Connection refused
Docker 版本是:
$ sudo docker version
Client:
Version: 1.12.3
API version: 1.24
Go version: go1.6.3
Git commit: 6b644ec
Built: Wed Oct 26 19:06:36 2016
OS/Arch: linux/arm
Server:
Version: 1.12.3
API version: 1.24
Go version: go1.6.3
Git commit: 6b644ec
Built: Wed Oct 26 19:06:36 2016
OS/Arch: linux/arm
解决方案来自该页面的评论:http://www.virtuallyghetto.com/2014/07/quick-tip-how-to-enable-docker-remote-api.html
[08/18/2016 at 6:00 am] Oliver Weise 说:
谢谢,这让我朝着正确的方向前进。然而从 Ubuntu 16.04 开始
及其 systemd docker 守护进程/etc/default/docker
不再是
有效的。相反,您需要创建一个 systemd dropin 文件。
我将这样的文件放在:/etc/systemd/system/docker.service.d/remote-api.conf
与内容:
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://127.0.0.1:2376 -H unix:///var/run/docker.sock
(是的,双重ExecStart是必要的)
之后运行:
sudo systemctl daemon-reload // reloading daemon definitions
sudo systemctl restart docker
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)