来自守护程序的错误响应:找不到网络myapp

时间:2016-09-22 13:51:08

标签: docker

我正在尝试在多主机网络中创建容器,但在创建时我收到此错误:

Error response from daemon: network myapp not found

此处myapp是我创建的覆盖网络的名称。我正在使用的命令是:

sudo docker run --rm -it --name=test_cont --net=myapp ubuntu bash

4 个答案:

答案 0 :(得分:3)

Docker网络的作用域是针对不同的访问。您的myapp网络是一个覆盖范围的覆盖网络。

这意味着您只能在群级别使用它 - docker service create --network myapp可以正常工作,因为服务也处于群级别。

你可以在一个swarm上启动一个容器docker run,但它只会在运行命令的节点上本地运行,因此无法看到群网络。

答案 1 :(得分:0)

我做了docker system prune后开始收到此错误。

docker network ls显示了我的网络:

NETWORK ID          NAME                DRIVER              SCOPE
pgl0gb0mbwql        myapp               overlay             swarm

但是部署堆栈会产生如下错误:

failed to create service myapp_database: Error response from daemon: network myapp not found

然后我问自己最重要的调试问题:您是否尝试过将其关闭然后再次打开?

我重新启动了docker守护程序,并删除了网络。然后,我能够重新创建它,并且一切重新开始。

答案 2 :(得分:0)

在我的例子中,即使它处于群模式,它也没有删除网络,但是如果我再次创建它,它会抛出一个错误,因为已经有一个具有该名称的网络。我不得不重新启动 docker 服务,这些是步骤:

docker network rm myapp                   #launch the error that the network did not exist
sudo systemctl restart docker.service     #restart the docker service
docker network ls                         # not shows network.

答案 3 :(得分:0)

假设您将 myapp_net 网络连接到 app_container,然后:

  1. docker network disconnect -f myapp_net app_container # 强制断开连接
  2. docker network create myapp_net #再次创建docker网络
  3. docker network connect myapp_net app_container #再次连接docker网络

它可以解决您的问题。