docker-compose network名称定义解读

 更新时间:2026年03月05日 09:50:59   作者:wwqicode  
文章详细介绍了Docker Compose网络名称的生成规则,包括没有自定义网络名、定义后缀和定义前缀的情况,通过设置环境变量`COMPOSE_PROJECT_NAME`,可以更友好的命名网络

docker-compose启动的网络名称:

1、没有自定义网络名

$ cat docker-compose.yaml 
version: '2'

services:
  zookeeper1:
    image: zookeeper
    container_name: zookeeper1
    environment:
        - ZOO_MY_ID=1
        - ZOO_SERVERS=server.1=zookeeper1:2888:3888

实际使用的网络是:<当前路径名_default>,如果<当前路径名>太长,会截取前缀部分。

例如当然目录名为testdocker,那么最终生产的网络名为:testdocker_default

$ docker network ls
abf87f64de25        testdocker_default   bridge              local

2、定义后缀

$ cat docker-compose.yaml 
version: '2'
networks:
  byfn:

services:
  zookeeper1:
    image: zookeeper
    container_name: zookeeper1
    environment:
        - ZOO_MY_ID=1
        - ZOO_SERVERS=server.1=zookeeper1:2888:3888
    networks:
      - byfn

定义网络名为byfn,那么最终生产的网络名为:<当前路径名_byfn>。

相对于之前没有定义的时候,把default替换成了定义的网络名,同样还是使用路径名作为前缀。

$ docker network ls
abf87f64de25        testdocker_byfn   bridge              local

3、定义前缀

当然使用路径名作为网络名是很不友好的,docker-compose使用环境变量来取代路径名。

设置环境变量:COMPOSE_PROJECT_NAME

$ cat .env
COMPOSE_PROJECT_NAME=aaa

这时网络名如下:

$ docker network ls
967ef0d41dd6        aaa_byfn                       bridge              local

 所以,docker-compose的网络名的规则是:<COMPOSE_PROJECT_NAME>_<NETWORKS>

1、如果NETWORKS没有定义,那么就是default。

2、如果COMPOSE_PROJECT_NAME,那么就是当前路径名(取前缀)。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Docker启动为Exited状态

    Docker启动为Exited状态

    这篇文章主要介绍了Docker启动为Exited状态的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 深入理解Docker Load和Docker Import的区别详解

    深入理解Docker Load和Docker Import的区别详解

    Docker是一个流行的容器化平台,提供了丰富的命令和功能,其中docker load和docker import是两个常用的命令,用于加载Docker镜像,这篇文章主要给大家介绍了关于Docker Load和Docker Import区别的相关资料,需要的朋友可以参考下
    2024-03-03
  • 云服务器安装docker环境的解决方案

    云服务器安装docker环境的解决方案

    这篇文章主要介绍了云服务器安装docker环境的解决方案,可以使用termins连接服务器,详细介绍了docker安装与Portainer安装过程,需要的朋友可以参考下
    2024-04-04
  • 详解docker镜像centos7配置Java运行环境

    详解docker镜像centos7配置Java运行环境

    基于docker官网centos7镜像配置java运行环境,自己安装jdk和tomcat,解决docker容器与宿主机时间不一致问题
    2017-05-05
  • Docker基本命令使用详解(推荐)

    Docker基本命令使用详解(推荐)

    因为工作中需要将服务容器化,所以最近开始学习Docker相关的知识,对于Docker入门常用的命令总结下分享到脚本之家平台,需要的的朋友参考下
    2017-03-03
  • docker compose 服务启动顺序控制的方法

    docker compose 服务启动顺序控制的方法

    这篇文章主要介绍了docker compose 服务启动顺序控制的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • docker无法搜索和拉取镜像的解决办法

    docker无法搜索和拉取镜像的解决办法

    这篇文章主要给大家介绍了关于docker无法搜索和拉取镜像的解决办法,通过更换可用的镜像加速器地址可以解决这个问题,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2024-12-12
  • Docker介绍与最实用最常见指令

    Docker介绍与最实用最常见指令

    Docker 是目前最流行的容器化技术之一,它通过轻量级的虚拟化方式,帮助开发者快速构建、部署和运行应用程序,本文介绍了Docker的常见和实用指令,包括镜像、容器、网络和数据卷的管理,感兴趣的朋友跟随小编一起看看吧
    2026-01-01
  • docker pull和docker-compose的用法及区别总结

    docker pull和docker-compose的用法及区别总结

    Docker是一种开源的应用容器引擎,能够将应用和环境打包在轻量、可移植的容器中,实现快速部署和一致运行,这篇文章主要介绍了docker pull和docker-compose用法及区别的相关资料,需要的朋友可以参考下
    2025-11-11
  • docker容器的原理分析

    docker容器的原理分析

    这篇文章主要介绍了docker容器的相关资料,帮助大家更好的理解和学习使用docker容器,感兴趣的朋友可以了解下
    2021-04-04

最新评论