Docker 网络(三)——容器间互访 link

本文介绍了如何使用Docker启动并连接三个容器:一个Web应用、一个负载均衡器及一个数据库容器。通过具体命令展示了容器间的网络链接方式,并解释了容器重启时如何自动更新/etc/hosts文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

启动三个容器,一个web,一个负载,一个数据库

ubuntu@ubuntu:~$ docker run -d --name database -e MYSQL_ROOT_PASSWORD=root mysql
9c2fe720d39d2a504032c40b50cbce1434d90d0360e53836ffcba3f9b71d8c37
ubuntu@ubuntu:~$ docker run -d --link database:db --name web runseb/hostname
4d1dd9df9b1ec526d5cb82eb8744ec747fdb9f8ca5a2ee7fe4eb84bda7c3b673
ubuntu@ubuntu:~$ docker run -d --link web:application --name lb nginx
702d2b9f7ae90c38372418489368c719075bbd105b680c30c92869df17eb3301
ubuntu@ubuntu:~$ docker ps 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
702d2b9f7ae9        nginx               "nginx -g 'daemon off"   3 seconds ago       Up 2 seconds        80/tcp, 443/tcp     lb
4d1dd9df9b1e        runseb/hostname     "python /tmp/hello.py"   11 seconds ago      Up 11 seconds       5000/tcp            web
9c2fe720d39d        mysql               "docker-entrypoint.sh"   20 seconds ago      Up 20 seconds       3306/tcp            database

ubuntu@ubuntu:~$ docker exec -ti web cat /etc/hosts
172.17.0.2  db 9c2fe720d39d database
172.17.0.3  4d1dd9df9b1e

ubuntu@ubuntu:~$ docker exec -ti lb cat /etc/hosts
172.17.0.3  application 4d1dd9df9b1e web
172.17.0.4  702d2b9f7ae9

如果容器重启,对应/etc/hosts文件里的条目也会被更新

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值