关于docker-compose网络详解

拥有回忆 提交于 2020-01-04 00:02:17

在同一个网络内我们可以使用服务名称来进行互相访问。
但是会出现一个情况,那便是服务名称重复的情况,那么遇到这样的事情,我们可以指定在网络中的别名

version: '2'

services:
  web:
    build: ./web
    networks:
      - new

  worker:
    build: ./worker
    networks:
    - legacy

  db:
    image: mysql
    networks:
      new:
        aliases:
          - database  # 在new的网络中,使用到了database
      legacy:
        aliases:
          - mysql # 在legacy网络中使用到了mysql

networks:
  new:
  legacy:

创建网络
docker network create <Network Name>
查看已存在的网络
docker network list

# 创建网络
version: '3'
  services:
    web:
      build: .
      ports:
        - "8000:8000"
    db:
      image: postgres
    
networks:
  default:
    external:
      name: network_name

会将上述web和db加入到你指定的网络中去,并且docker-compose down不会将其删除
参考来源

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!