Docker为C/S架构,服务端为docker daemon,客户端为docker.service.支持本地unix socket域套接字通信与远程socket通信。默认为本地unix socket通信,要支持远程客户端访问需要做如下设置(仅用于测试,生产环境开启会极大增加不安全性:由于开了监听端口,任何人可以通过远程连接到docker daemon服务器进行操作):
1、设置daemon监听连接:
添加本地默认监听端口,模式为IP:port
Ubuntu:
修改daemon配置:/etc/docker/daemon.json,添加如下行:
{"hosts": ["fd://", "tcp://0.0.0.0:2375"]}(需要花括号,如果有多行设置,每行都需要花括号,设置了fd://自动便是unix socket
重启docker:
systemctl restart docker.service(Ubuntu16.04)
查看有了“-H”表示成功
root@ubuntu:~# ps aux|grep dockerd
root 113731 0.5 0.1 636160 47536 ? Ssl 10:54 0:00 /usr/bin/dockerd -H unix:///var/ -H tcp://0.0.0.0
root@ubuntu:~# netstat -lant|grep 2375
tcp6 0 0 :::2375 :::* &