为什么docker-compose表示网络未定义,但“ docker network ls”显示了网络?

时间:2019-08-12 22:07:12

标签: docker redis docker-compose

我使用以下方法创建了一个网络

docker network create my_network

当我运行docker network ls时,我看到:

NETWORK ID          NAME                                                      DRIVER              SCOPE
80e99e7a8f98        bridge                                                    bridge              local
ff48b8c6586b        host                                                      host                local
cdf5969b458d        none                                                      null                local
9bd1e13004b7        my_network                                                bridge              local

但是当我尝试使用该网络创建Redis节点时,它说:

  

服务“ redis”使用未定义的网络“ my_network”

docker-compose.yml

version: '2.1'
services:

redis:
    image: redis
    container_name: redis
    environment:
    - ALLOW_EMPTY_PASSWORD=yes
    ports:
    - 6379:6379
    networks: 
    - my_network

知道为什么吗?

1 个答案:

答案 0 :(得分:2)

您需要按照documentation中所述在docker-compose文件中定义一个预先存在的网络。

networks:
  my_network:
    external:
      name: my_network