LOVEJOAN

文章 分类 评论
76 9 1453

站点介绍

人生是一场孤独的旅行,没有终点。。。

Docker容器网络互联

chuck 2023-03-15 345 12条评论 Docker Docker

首页 / 正文

Dcocker网络互联

每个容器也是有自己的ip地址的,默认的地址像172.17.0.x/16这种。主要是挂载在主机的docker0上,用于与容器通讯以及容器间通讯。

端口映射

默认使用docker run指令不指定参数,外部是无法访问容器的,但是像nginx,apache,mysql等需要对外提供访问的容器通过什么方式来实现呢?

使用-p(小写)或者-P(大写)来将容器的网络端口映射到主机的端口提供对外访问。
指定端口映射:

# 通过 docker run -p(小写)实现端口映射
# hostPort:containerPort # 所有接口的指定端口
# ip:hostPort:containerPort # 一些服务器可能有多个网卡,可以指定到特定网卡的端口
# ip::containerPort # 指定地址的随机端口
# 将nginx容器的80端口映射到本地所有接口地址的80端口
docker run --name nginx -p 80:80 nginx
# 还可以指定udp类型
docker run -d -p 127.0.0.1:53:53/udp dns-server

随机端口映射:

# 通过docker run -P(大写)实现随机端口映射,会随机在主机的高位端口映射到容器的expose暴露端口,前提容器或者镜像有配置expose端口
docker run -d --name mysql -P -e MYSQL_ROOT_PASSWORD=Acb123. mysql

查看端口映射规则:

# docker port 容器名称
[root@localhost etc]# docker port mysql
3306/tcp -> 0.0.0.0:32769
3306/tcp -> [::]:32769
33060/tcp -> 0.0.0.0:32768
33060/tcp -> [::]:32768

容器互联

不同容器间互联主要通过定义唯一的容器名称与链接容器关系实现。
--name指定容器名称,该名称是唯一,不能相同。
--link用于将容器与另外一个容器进行安全连接,不需要暴露端口等。

--link name:alias
docker run -itd --link test:test_link nginx
# 连接子容器test,链接名称test_link
查看父容器的/etc/hosts可以看到对应的条目信息。

评论(12)

  1. 1 游客 2025-03-27 23:48 回复

    555

  2. 1 游客 2025-03-27 23:47 回复

    555-1)) OR 386=(SELECT 386 FROM PG_SLEEP(15))--

  3. 1 游客 2025-03-27 23:46 回复

    555-1; waitfor delay '0:0:15' --

  4. 1 游客 2025-03-27 23:44 回复

    -1 OR 2+241-241-1=0+0+0+1 --

  5. 1 游客 2025-03-27 23:44 回复

    555

  6. 1 游客 2025-03-27 23:43 回复

    555

  7. 1 游客 2025-03-27 23:42 回复

    555

  8. 1 游客 2025-03-27 23:41 回复

    555

  9. 1-1; waitfor delay '0:0:15' -- 游客 2025-03-27 23:40 回复

    555

  10. 1 游客 2025-03-27 23:38 回复

    555

  11. 1 游客 2025-03-27 23:37 回复

    555

  12. 1 游客 2025-03-27 23:35 回复

    555

热门文章

最新评论

  • 1

    555fulIdEqZ' OR 160=(SELECT 160 FROM PG_SLEEP(15))--

  • 1

    555-1)) OR 58=(SELECT 58 FROM PG_SLEEP(15))--

  • 1

    555-1) OR 13=(SELECT 13 FROM PG_SLEEP(15))--

  • 1

    555-1 OR 475=(SELECT 475 FROM PG_SLEEP(15))--

  • 1

    555

  • 1

    555

  • 1

    5554FobGRsu') OR 696=(SELECT 696 FROM PG_SLEEP(15))--

  • 1

    555C9F0upP1' OR 504=(SELECT 504 FROM PG_SLEEP(15))--

  • 1

    555

  • 1-1; waitfor delay '0:0:15' --

    555

日历

2025年05月

    123
45678910
11121314151617
18192021222324
25262728293031

文章目录