云计算核心技术Docker教程:docker-compose指定自定义网络

时间:2026-11-14 来源:风轻云淡网

docker-compose不仅可以使用默认的应用程序网络,还可以使用顶级networks密钥指定自己的网络。这使您可以创建更复杂的拓扑并指定自定义网络驱动程序和选项。您还可以使用它将服务连接到不受Compose管理的外部创建的网络。

每个服务都可以使用服务级云计别 networks密钥指定要连接的网络,该服务级别密钥是引用顶级 networks密钥下条目的名称的列表。

这是一个示例Compose文件,定义了两个自定义网络。该proxy服务与该服务是隔离的db,因为它们不共享公共网络-只能app与两者通信。

version: "算核3"

services:

         proxy:

               build: ./proxy

        &n心技bsp;      networks:

                  - frontend

         app:

&nbs术Dp;             build: ./app

              networks:

         oc;         - frontend

                  - backend

         db:

&nbskep;             image: postgres

              networks:

          &r教nbsp;      - backend

networks:

        frontend:

             # Use a custom driver

&程:nbsp;            driver: custom-driver-1

        backend:

            # Usdoe a custom driver which takes special options

             driver: custom-driver-2

         ck;    driver_opts:

                 foo: "1"

               er  bar: "2"

通过为每个连接的网络设置ipv4_address和/或ipv6_address,可以为网络配置静态IP地址。

也可以为网络指定一个自定义名称(从3.5版开始):

version: "3.5"

networks:

     -c     frontend:

               name: custom_frontend

              &nbomsp;driver: custom-driver-1