启动docker容器(不是我开发的)时,docker说找不到网络。
这是否意味着问题出在容器本身内部(因此只有开发人员可以修复它),或者是否可以更改一些网络配置来修复此问题?
我假设您正在使用 docker-compose 并看到此错误。我推荐
docker-compose up --force-recreate <name>
这应该重新创建容器以及支持服务,例如相关网络(它可能会创建一个新网络)。
先正常关机,然后重新启动
docker-compose down
docker-compose up
这可能是一些旧服务没有被杀掉造成的,先添加
--remove-orphans
关闭容器时标记以删除任何正在运行的不死服务,然后重新启动容器
docker-compose down --remove-orphans
docker-compose up
我面临着类似的问题,这对我有用:
尝试运行这个
- docker container ls -a
并通过 docker container rm ca877071ac10
删除容器 id(这是容器 id )。
问题是有一些旧的容器实例没有被删除。一旦所有旧的终止实例被删除,您就可以使用 docker-compose 文件启动容器
这是基于这个答案。
就我而言,产生错误的步骤如下:
docker-compose --project-name "my-project" up -d
失败并出现本主题中描述的错误。简单地添加force-recreate就解决了,这样:
docker-compose --project-name "my-project" up -d --force-recreate
这可能有效,因为使用此容器将重新创建并与重新创建的网络链接(之前已按照先决条件中的描述进行修剪)。
显然是 VPN 造成的。关闭VPN并将Docker恢复出厂设置,已经解决了我们公司两台电脑的问题。第三台没有 VPN 的个人计算机从未出现过问题。
除此之外,
docker system prune
将删除“至少一个容器未使用的所有网络”,从而允许在下一次 docker-compose up 时重新创建它们
更准确地说
docker network prune
也可以使用。
在网络设置/网络部分找到网络名称
docker inspect container_name
创建新网络
docker network create network_name
将网络连接到容器
docker network connect network_name container_name