您的位置:首页 > 其它

容器互联与端口映射

2017-11-19 20:03 337 查看
原文地址:https://www.cnblogs.com/ZachZhou/p/7455881.html

容器互联

默认情况下,容器都是各自独立运行,与世隔绝。

Docker提供了一个名为docker0的虚拟网桥,它会为每个相连的容器分配一个虚拟子网。但是尽管容器都连在同一个虚拟网桥上,如果没有额外的配置,它们还是不能够相互通信。



要将容器链接在一起,须按照以下步骤:

运行你希望被链接的容器,并用--name选项为它命名。
运行第二个容器,在docker run命令里运用--link选项并指定第一个容器的名字将其链接到第一个容器上。

例如,我们启动一个mysql的容器并链接到它,我们可以执行:

docker run –d --name db mysql
docker run –it --link db:db --name second-container ubuntu sh

--link选项的值的格式为:想要链接到的容器的名字:为想要链接到的容器取的内部别名。别名可以任意取,主要用于网络配置的解析。

端口映射

当我们想通过主机访问在Docker容器上运行的服务时,我们可以使用docker run命令的-p选项来执行端口映射。

例如,我们要通过访问Docker主机上的8080端口,访问在容器中运行在80端口上的Web服务器,我们可以使用以下命令进行端口映射:

docker run -d -p 8080:80 --name webserver apache


我们可以通过下列命令查找映射的端口:

docker port
docker ps

我们还可以使用具有EXPOSE指令的Dockerfile和docker run命令的-P选项将容器上的端口公开到外面。 这将在后面的文章中讨论。

如果我们想要docker client连接到远程主机的docker daemon以便在本地执行远端docker命令,可以使用-H选项并跟上IP地址和端口。

Note:docker daemon默认端口为2375

docker -H 192.168.56.50:2375 –d &


或者我们可以设置DOCKER_HOST变量:

export DOCKER_HOST="tcp://192.168.56.50:2375"




将docker client重新连回本地:

export DOCKER_HOST=
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: