Docker使用笔记-容器间通讯
# 概述
我们在使用docker建立容器的时候,往往需要两个容器间进行通讯,比如MySQL与JAVA。所以这篇文章,讲解容器通讯的几种方式。
# 正文
# Link方式
首先我们先创建数据容器db
sudo docker run -idt --name=db mysql
1
使用--link=name:alias name 就是要访问的目标及其,alias就是自定的别名。
sudo docker run -it --name=web --link=db:test_link java
cat /etc/hosts
1
2
2
我们看到容器内hosts内多了一条信息
172.17.0.11 test_link 600886c7c69d db
1
这就意味着我们可以访问到db容器进行通信
# Network方式
# 新建网络
1.下面先创建一个新的Docker网络
docker network create -d bridge my-net
1
-d 参数指定Docker网络类型,有bridge、overlay。
# 连接容器
分别运行两个容器并连接到新建的my-net网络
docker run -it --rm -name busybox1 --network my-net busybox sh
dokcer run -it --rm -name busybox2 --network my-net busybox sh
```s
###### 验证
下面可以通过ping来证明两个容器间建立了互联关系。
在busybox1容器输入如下命令
```s
ping busybox2
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# Docker Compose
如果有多个容器之间需要互相连接,推荐使用docker compose。
上次更新: 2023/01/11