我第一次使用了docker,并且我试图实现这个- https://docs.docker.com/get-started/part2/#tag-the-image。
有一段时间,我试图通过这个命令连接本地主机-
$ curl http://localhost:4000这表明了这个错误-
curl: (7) Failed to connect to localhost port 4000: Connection refused但是,我已经通过以下代码解决了这个问题-
$ docker-machine ip default
$ curl http://192.168.99.100:4000在那之后一切都进行得很好,但在最后一部分,我试图运行的应用程序使用以下一行,根据教程.
$ docker run -p 4000:80 anibar/get-started:part1但是,我有个错误
C:\Program Files\Docker Toolbox\docker.exe: Error response from daemon: driver failed programming external connectivity on endpoint goofy_bohr (63f5691ef18ad6d6389ef52c56198389c7a627e5fa4a79133d6bbf13953a7c98): Bind for 0.0.0.0:4000 failed: port is already allocated.发布于 2017-09-12 13:17:47
在启动使用相同端口的新容器之前,需要确保您启动的上一个容器已被杀死。
docker container ls
docker rm -f <container-name>发布于 2017-10-06 10:17:04
为了向IgorBeaz致敬,您需要停止运行当前容器。为此,您将了解当前容器ID:
$ docker container ls你会得到这样的东西:
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                  NAMES
12a32e8928ef        friendlyhello       "python app.py"     51 seconds ago      Up 50 seconds       0.0.0.0:4000->80/tcp   romantic_tesla   然后通过以下方式阻止容器:
$ docker stop 12a32e8928ef最后,您尝试做您想做的事情,例如:
$ docker run -p 4000:80 friendlyhello发布于 2020-07-12 05:56:38
我尝试了以上所有的答案,但没有一个有效,在我的例子中,甚至docker container ls都没有显示任何容器正在运行。看起来,这个问题是由于码头代理仍然在使用端口,尽管没有容器在运行。在我的例子中,我使用的是ubuntu。下面是我尝试解决问题的方法,只需运行以下两个命令:
sudo service docker stop
sudo rm -f /var/lib/docker/network/files/local-kv.dbhttps://stackoverflow.com/questions/46176584
复制相似问题