当前位置: 首页>>技术教程>>正文


ubuntu – Docker错误绑定:地址已在使用中

, , , ,

问题描述

当我在Docker项目中运行docker-compose up时,它失败并显示以下消息:

Error starting userland proxy: listen tcp 0.0.0.0:3000: bind: address already in use

netstat -pna | grep 3000显示如下:

tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      -  

我已经尝试过docker-compose down,但没有帮助。

最佳回答

在您的情况下,使用该端口的是其他进程,如注释中所示,sudo netstat -pna | grep 3000帮助您解决了问题。

在其他情况下(我本人也曾多次遇到),它大多是在其他情况下运行的同一容器。在那种情况下,docker ps非常有帮助,因为我经常将相同的容器留在其他目录中运行,然后尝试在其他使用相同容器名称的地方再次运行。

docker ps如何帮助我:docker rm -f $(docker ps -aq)是一个简短命令,可用于删除所有容器。

编辑:添加了docker ps如何帮助我。

次佳回答

这对我有帮助:

docker-compose down
docker rm -fv $(docker ps -aq)
sudo lsof -i -P -n | grep <port number>

然后:kill -9 <process id>(macOS)或sudo kill <process id>(Linux)。

资料来源:comment by user Rub21

第三种回答

我有同样的问题。我通过在主机上停止Apache2服务来解决此问题。

第四种回答

我遇到了同样的问题,docker-compose down --rmi all(在与您运行docker-compose相同的目录中)有助于

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8645.html,未经允许,请勿转载。