新闻中心

docker容器间如何通信

作者 / 时间 2020-08-15 08:36:16

docker容器间如何通信?docker容器之间通信的主要方式有以下几种:

1.通过容器ip访问

容器重启后,ip会发生变化。通过容器ip访问不是一个好的方案。通过使用容器的ip地址来通信,会导致ip地址的硬编码,不方便迁移,并且容器重启后ip地址会改变,除非使用固定的ip。

2.通过宿主机的ip:port访问

通过宿主机的ip:port访问,通过宿主机的ip加上容器暴露出的端口号来通信,通信方式比较单一,只能依靠监听在暴露出的端口的进程来进行有限的通信。

3.通过link建立连接(官方不推荐使用)

运行容器时,指定参数link,使得源容器与被链接的容器可以进行相互通信,并且接受的容器可以获得源容器的一些数据,比如:环境变量。通过docker的link机制可以通过一个name来和另一个容器通信,link机制方便了容器去发现其它的容器,并且可以安全的传递一些连接信息给其它的容器。

4.通过 User-defined networks(推荐)

docker network来创建一个桥接网络,在docker run的时候将容器指定到新创建的桥接网络中,这样同一桥接网络中的容器就可以通过互相访问。

创建网络

docker network create test-network

启动容器时,加入创建的网络

docker run -it --network test-network --network-alias mysql -e MYSQL_ROOT_PASSWORD=123 mysql:5.7

启动被链接的容器

docker run -it --network test-network --network-alias centos centos /bin/bash

无忧主机的容器云是通过docker技术,在集群服务器上部署容器服务实现,安全可靠,拥有上万Linux镜像,功能强大、轻量灵活,可轻松作集群服务,自由轻松搭建私有网络。

高性价比的容器云产品链接

本文地址:https://www.51php.com/news/31173.html

1
1
1
1
1
1
1