Docker Compose 中的 networks 是用于定义 Docker 容器间通信的网络。在 Docker Compose 中,您可以创建一个或多个 networks,然后将服务(services)映射到这些 networks 中,从而使它们能够相互通信。
您可以使用 Docker Compose 中的 networks 来创建不同类型的网络,如 bridge、host、overlay 等等。Bridge 网络是默认的网络类型,可以用于在单个主机上的容器之间进行通信。Host 网络可以让容器直接使用主机网络,而不是在 Docker 引擎内部进行网络隔离。Overlay 网络则可以用于跨多个 Docker 主机进行通信。
在 Docker Compose 文件中定义 networks 的语法如下所示:
networks:
<network-name>:
[driver: <driver-name>]
[external: true|false]
[name: <network-name>]
[attachable: true|false]
[driver_opts: {}]
[internal: true|false]
其中,<network-name>
为网络名称,driver
为网络驱动程序名称,external
用于指定网络是否应该由 Docker Compose 创建,name
用于指定网络名称,attachable
用于指定网络是否可以附加到已运行的容器,driver_opts
用于指定网络驱动程序的特定选项,internal
用于指定是否应将网络标记为仅供容器内部使用。