docker-compose portmapping给出了创建端点hnsCall的失败在Win32中失败:指定的端口已经存在

时间:2019-12-03 14:16:41

标签: docker-compose

我已经在Visual Studio中启动了一个新的(.net core 3.0)项目,该项目具有Docker支持(Windows)

我添加了Docker支持(右键单击项目Add-> Docker支持),并以相同的方式添加了Docker compose支持。

如果我只是单击Docker Compose的“播放按钮”,则该项目将启动一切正常。

但是当我从解决方案文件夹中运行 docker-compose up 时,我得到了

  

无法启动服务testproj30:创建端点失败   网络nat上的testproj30_testproj30_1:hnsCall在Win32中失败:   指定的端口已经存在。

(我已经关闭了VS解决方案)。如果我在docker-compose.override.yaml中删除端口映射,则不会收到此错误消息。我没有重启docker servce,hni service等最常见的技巧。没有任何帮助。

我不想依赖项目文件中的所有VS-伏都教徒,上帝知道还涉及其他哪些文件。

我可以运行 docker run -p 8080:80 443:443 而没有任何端口问题

1 个答案:

答案 0 :(得分:0)

我通过删除一些终止的容器然后修剪网络来解决了类似的问题。

列表终止的容器:

docker ps -a

删除它们(Cygwin语法):

docker rm $(docker ps -aq)

您将收到有关runnnig容器的错误消息。

清洁网络:

docker network prune

对我来说,主要原因是Docker杀死进程跳过了我应用程序的端口释放机制。