我已经在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 而没有任何端口问题
答案 0 :(得分:0)
我通过删除一些终止的容器然后修剪网络来解决了类似的问题。
列表终止的容器:
docker ps -a
删除它们(Cygwin语法):
docker rm $(docker ps -aq)
您将收到有关runnnig容器的错误消息。
清洁网络:
docker network prune
对我来说,主要原因是Docker杀死进程跳过了我应用程序的端口释放机制。