怎么实现Docker容器之间通讯

参考文档:https://blog.csdn.net/u013355826/article/details/84987233

  • 通过 --link的方式把不同的容器连接起来,如下所示(不推荐):
# 启动mysql容器
docker run -d --name test-mysql -e MYSQL_ROOT_PASSWORD=1234 mysql:5.7
# 启动另一个容器,用来对上面的mysql容器进行请求
docker run -d --link test-mysql:my-test-mysql -e MYSQL_ROOT_PASSWORD=1234 --name test-centos mysql:5.7

# 进入下面这个容器中
docker exec -it test-centos /bin/bash
# 使用下面指令能正常进入另一台容器MySQL命令行操作界面,这里 -h 后面的参数也可以是 my-test-mysql 都是最上面创建的容器
mysql -h test-mysql -uroot -p1234

如下图所示:

  • 使用网桥的方式(推荐)
# 创建一个网络
docker network create test-network
# 使用上面的网络启动一个mysql容器
docker run -d --network test-network --network-alias test-mysql  -e MYSQL_ROOT_PASSWORD=1234 mysql:5.7
# 使用上面的网络启动一个容器,用来对上面的mysql容器进行请求
docker run -d --network test-network --network-alias test-centos  -e MYSQL_ROOT_PASSWORD=1234 --name test-centos mysql:5.7

# 进入下面这个容器中
docker exec -it test-centos /bin/bash
# 使用下面指令能正常进入另一台容器MySQL命令行操作界面,说明网络配置成功了
mysql -h test-mysql -uroot -p1234
posted @ 2022-02-08 19:59  GetcharZp  阅读(82)  评论(0编辑  收藏  举报