封尘网

让学习成为一种习惯!

Docker监听远程端口实现远程调用API

网上关于Docker如何修改配置实现HTTP API调用。但是由于Docker近来版本更新快,但是大致还是差不多配置方法:

系统:Centos7
Docker 1.12.0 的配置方法:

查找Docker包:

[root@test ~]# rpm -qa|grep docker
docker-engine-selinux-1.12.0-1.el7.centos.noarch
docker-engine-1.12.0-1.el7.centos.x86_64
docker-registry-0.9.1-7.el7.x86_64

查看docker-engine-1.12.0-1.el7.centos.x86_64的安装目录:【yum安装的都是一样的位置】

rpm -ql docker-engine-1.12.0-1.el7.centos.x86_64

vim /lib/systemd/system/docker.service 【添加紫色部分】

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

端口可根据情况修改,不冲突就好;

重启Docker程序:

systemctl daemon-reload
systemctl restart docker

系统:Centos6.5
Docker 1.7.1配置方法:

修改配置文件:/etc/sysconfig/docker

添加以下参数:

other_args="-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"

保存,重启Docker程序;

测试方法:

通过接口获取所有的镜像:

curl 'http://192.168.18.54:2375/images/json?all=0'| python -m json.tool

查看已经启动的容器信息:

curl http://192.168.18.54:2375/containers/json |python -m json.tool

获取指定容器的具体信息:

curl -X GET 'http://192.168.18.54:2375/containers/e37e50e73bd4/json'|python -m json.tool

启动指定容器:【此处使用容器别名】

curl -XPOST "http://192.168.18.54:2375/containers/t1/start"

更详细参考官方文档:

Docker Remote API

注:

这样开启了远程调用存在安全漏洞的问题,对外网使用时建议添加认证。

提醒:本文最后更新于 2579 天前,文中所描述的信息可能已发生改变,请谨慎使用。