网络是 Docker 允许 container
相互通信以及与外部网络通信的一个重要方面。 以下是有关如何连接和管理网络的详细指南 Docker:
默认桥接网络
Docker 提供了一个默认的网络 bridge
调用 container
。 创建时 container 不指定网络,它会自动连接到默认 bridge
网络。
Container 同一 bridge
网络上的计算机可以使用其内部 IP 地址相互通信。 Docker 提供 DNS 解析以允许 container 通过域名进行通信。
Container
链接
通过使用该 --link
选项,您可以将一个链接 container
到另一个,从而使用链接的 container 名称或环境变量启用它们之间的通信。
例如,当 container
从名为 的映像运行 时,您可以 使用以下命令将其链接到 名为的 webapp
MySQL: container mysql
docker run --name webapp --link mysql:mysql webapp-image
定制网络
您可以创建自定义网络 Docker 以允许 container 同一网络内的通信。
使用该 docker network create
命令创建自定义网络。 例如,要创建名为 的网络 my-network
,您可以使用以下命令: docker network create my-network
连接 Container
到自定义网络
创建 时 container
,使用 --network
将 附加 container
到自定义网络的选项。
例如,要将 a 连接 container
到“my-network”网络,可以使用以下命令: docker run --network my-network my-image
连接 Container
到主机网络
使用 --publish
或 --publish-all
选项将端口连接 container
到主机上的端口或主机上的随机端口。
例如,要将a的80端口连接 container
到主机上的8080端口,可以使用以下命令: docker run -p 8080:80 my-image
通过利用 中的网络功能,您可以管理环境 中网络 Docker 之间的连接和通信 。 这为您的应用程序提供了一个灵活且可扩展的环境,允许应用 程序 之间以及与外部网络无缝交互。 container
Docker components
container