docker-compose down default_network错误

Flo*_*ian 14 php mysql networking docker docker-compose

我有一个docker-compose与一些php,mysql等开始.几天后,我不能把它们搞砸,因为一切都停止而不是mysql.它总是给我以下错误:

ERROR: network docker_default has active endpoints
Run Code Online (Sandbox Code Playgroud)

这是我的docker-compose.yml

version: '2'
services:
  php:
    build: php-docker/.
    container_name: php
    ports:
      - "9000:9000"
    volumes:
      - /var/www/:/var/www/
    links:
      - mysql:mysql
    restart: always

  nginx:
    build: nginx-docker/.
    container_name: nginx
    links:
      - php
      - mysql:mysql
    environment:
      WORDPRESS_DB_HOST: mysql:3306
    ports:
      - "80:80"

    volumes:
      - /var/log/nginx:/var/log/nginx
      - /var/www/:/var/www/
      - /var/logs/nginx:/var/logs/nginx
      - /var/config/nginx/certs:/etc/nginx/certs
      - /var/config/nginx/sites-enabled:/etc/nginx/sites-available
    restart: always

  mysql:
    build: mysql-docker/.
    container_name: mysql
    volumes:
      - /var/mysql:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: pw
      MYSQL_USER: florian
      MYSQL_PASSWORD: pw
      MYSQL_DATABASE: database
    restart: always


  phpmyadmin:
    build: phpmyadmin/.
    links:
     - mysql:db
    ports:
     - 1234:80
    container_name: phpmyadmin
    environment:
     PMA_ARBITRARY: 1
     PMA_USERNAME: florian
     PMA_PASSWORD: pw
     MYSQL_ROOT_PASSWORD: pw
    restart: always
Run Code Online (Sandbox Code Playgroud)

docker network inspect docker_default 给我:

[
    {
        "Name": "docker_default",
        "Id": "1ed93da1a82efdab065e3a833067615e2d8b76336968a2591584af5874f07622",
        "Created": "2017-03-08T07:21:34.969179141Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.18.0.0/16",
                    "Gateway": "172.18.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Containers": {
            "85985605f1c0c20e5ee9fedc95800327f782beafc0049f51e645146d2e954b7d": {
                "Name": "mysql",
                "EndpointID": "84fb19cd428f8b0ba764b396362727d9809cd1cfea536e648bfc4752c5cb6b27",
                "MacAddress": "02:42:ac:12:00:03",
                "IPv4Address": "172.18.0.3/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {}
    }
]
Run Code Online (Sandbox Code Playgroud)

UPDATE

似乎docker rm mysql -f停止了mysql容器,但网络正在运行.

删除了网络docker network disconnect -f docker_default mysql但我对如何陷入这种情况非常感兴趣.有任何想法吗?

Ale*_*x K 30

当我在停止容器之前通过 docker-compose.yml 文件重命名服务后添加此问题时,我解决了类似的问题

docker-compose down --remove-orphans
Run Code Online (Sandbox Code Playgroud)


Tom*_*iak 20

您需要断开陈旧的端点与网络的连接。首先,获取端点名称

docker network inspect <network>
Run Code Online (Sandbox Code Playgroud)

您可以在输出 JSON: 中找到您的端点Containers -> Name。现在,只需使用以下命令强制断开它们:

docker network disconnect -f <network> <endpoint>
Run Code Online (Sandbox Code Playgroud)

  • 在我们的例子中,检查中没有任何端点。 (16认同)
  • 我也遇到了同样的问题,没有终点。docker 系统修剪 - 帮助 (2认同)

Pro*_*was 14

不幸的是,以上都不适合我。重启docker服务,问题解决。


nat*_*itt 12

我猜你在你正在运行的时候编辑了docker-compose文件......?

有时,如果您在执行之前编辑docker-compose文件docker-compose down,那么docker-compose将尝试停止的不匹配.首先运行docker rm 8598560以停止当前运行的容器.从那里,确保docker-compose down在编辑文件之前执行操作.一旦你停止容器,docker-compose up应该工作.

  • 不,我在运行时没有编辑撰写文件。我真的什么都没做。以为我的网络服务器已启动并正在运行。但有时我在连接到 WordPress 时遇到问题。因为数据库问题。然后我试图把它记下来,我的问题开始了...... (4认同)
  • 就我而言,docker检查网络没有显示该网络的任何活动容器。重新启动 docker 并运行“docker system prune --all”删除了网络,一切又恢复正常了。 (2认同)

sha*_*002 8

这对我有用。systemctl restart docker


Seb*_*Seb 7

我碰巧遇到此错误消息,因为我有两个同名的网络(复制/粘贴错误)。

我做了什么来修复它:

  • docker-compose down- 忽略错误
  • docker network list- 注意是否有任何容器正在使用它,并在必要时停止
  • docker network prune删除所有悬空网络,尽管您可能只想docker network rm <network name>
  • 将第二个网络重命名为唯一名称
  • docker-compose up

  • `docker-compose up --remove-orphans` 删除剩余的容器 (5认同)