如何启用Docker远程API?在浏览器中就可以访问镜像和容器信息
测试环境
下面的操作,在如下 CentOS 7 和 Redhat Enterprise 7.6 环境中经过测试验证,可以生效。
环境1-CentOS 7
[root@centos-101 ~]# uname -r
3.10.0-862.3.2.el7.x86_64
[root@centos-101 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
环境2-Redhat Enterprise 7.6
[root@sf160145 ~]# uname -r
3.10.0-957.12.2.el7.x86_64
[root@sf160145 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.6 (Maipo)
一、编辑 /lib/systemd/system/docker.service 文件
[root@centos-101 ~]# ls /lib/systemd/system/docker.service
/lib/systemd/system/docker.service
新增或修改如下配置项,替换原有的设置。
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
如下所示:
修改完成,保存文件。
二、重启 docker服务
# 重新加载docker 配置
systemctl daemon-reload
# 重启docker 服务
systemctl restart docker.service
# 检查 docker 服务状态
systemctl status docker.service
再次检查dockerd 命令是否监听上述网络端口:
$ sudo ps aux |grep dockerd
[root@local system]# ps aux | grep dockerd
root 26983 0.9 2.9 782448 112816 ? Ssl 16:35 0:01 /usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
root 27387 0.0 0.0 112720 984 pts/0 S+ 16:38 0:00 grep --color=auto dockerd
三、测试验证
在Windows client端,通过远程管理的方式,向Docker主机发送命令。
docker -H 192.168.56.101:2375 info
在Docker for windows 客户端,可以设置DOCKER_HOST 环境变量,然后在使用Docker 命令时,就可以省略 -H 参数了。
或者在windows 系统中编辑系统变量,如下图所示:
在 Docker for Linux 客户端,也可以设置 DOCKER_HOST 环境变量:
export DOCKER_HOST=tcp://192.168.56.101:2375
还可以通过浏览器,访问下面这些Remote API:
http://192.168.56.101:2375/info
http://192.168.56.101:2375/images/json
http://192.168.56.101:2375/containers/json
如 http://192.168.56.101:2375/version 返回docker server端的信息: