docker开启远程访问

默认情况下,Docker守护进程Unix socket(/var/run/docker.sock)来进行本地进程通信,而不会监听任何端口,因此只能在本地使用docker客户端或者使用Docker API进行操作。如果想在其他主机上操作Docker主机,就需要让Docker守护进程打开一个HTTP Socket,这样才能实现远程通信。

编辑docker的配置文件/etc/default/docker修改DOCKER_OPTS成

#同时监听本地unix socket和远程http socket(2375)
DOCKER_OPTS="-H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375"

然后重新启动docker守护进程。

sudo service docker restart

至此如果服务器启用了防火墙,只要把2375端口开放既可以在其他主机访问本docker实例了。

例如:
DOCKER_HOST=$host:2375 docker ps

此时发现docker守护进程已经在监听2375端口,在另一台主机上可以通过该端口访问Docker进程了。
# docker -H IP:2375 images

本地操作docker。
# docker images

posted on 2016-10-18 10:11  zqifa  阅读(31212)  评论(0编辑  收藏  举报

导航