Docker 提供了各种网络选项,以便容器之间和容器与外部世界之间进行通信。以下是一些 Docker 中使用网络的基本概念和操作:

默认网络模式:

1. 桥接网络(Bridge)
   - Docker 默认使用桥接网络,它允许容器在同一主机上相互通信。
   - 桥接网络会为每个容器分配一个唯一的 IP 地址,并且容器之间可以使用容器名称进行通信。

   示例创建一个带有桥接网络的容器:
   docker run --name mycontainer -d myimage

   这将在默认的桥接网络上启动一个容器。

创建自定义网络:

1. 创建自定义桥接网络
   docker network create mynetwork

   这将创建一个名为 "mynetwork" 的自定义桥接网络。

2. 在容器中使用自定义网络
   docker run --name container1 --network mynetwork -d image1
   docker run --name container2 --network mynetwork -d image2

   这将在同一自定义网络上启动两个容器,它们可以通过容器名称进行通信。

连接到多个网络:

1. 创建第二个网络
   docker network create mysecondnetwork

2. 将容器连接到多个网络
   docker network connect mysecondnetwork container1

   这将使 container1 连接到 mysecondnetwork 网络,从而实现容器跨多个网络的通信。

使用主机网络:

1. 使用主机网络
   docker run --name mycontainer --network host -d myimage

   这将使容器使用主机的网络命名空间,与主机共享网络栈。容器可以通过主机 IP 直接访问外部网络服务。

端口映射:

1. 将容器端口映射到主机端口
   docker run -p 8080:80 myimage

   这将将容器的端口 80 映射到主机的端口 8080,允许通过主机的 8080 端口访问容器的应用程序。

这些是 Docker 中基本的网络概念和操作。根据具体需求,可以选择不同的网络模式和选项,以满足容器之间和容器与外部之间的通信要求。


转载请注明出处:http://www.pingtaimeng.com/article/detail/10019/Docker