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

启动userland代理时错误:监听tcp 0.0.0.0:3000:绑定:地址已在使用

netstat -pna | grep 3000

显示了这个:

tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      -  

我已经试过docker-compose down了,但没用。


当前回答

在我的例子中,问题是我作为根用户运行MongoDB,停止它就可以了。

sudo brew services stop mongodb-community

其他回答

我有同样的问题,通过停止docker容器,它得到了解决。

sudo docker container stop <container-name>

我也有同样的问题, (在运行Docker-compose up的目录下) 帮助

UPD:注意-这也会删除你从评论中提取的本地docker图像

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

@DmitrySandalov的回答:我在8080上运行tomcat/java,它需要继续运行。看看船坞。Yml文件并将8080的条目更改为我选择的另一个条目。

nginx:
  build: nginx
  ports:
    #- '8080:80' <-- original entry
    - '8880:80'
    - '8443:443'

完美的工作。(唯一的问题是,如果我更新项目,更改将被删除,因为它来自外部回购。)

在我的机器上,这个netstat -tulpn命令没有显示正在使用的端口(8080)的PID,所以我不能杀死它,杀死容器并重新启动计算机不起作用。所以service docker restart命令为我重新启动docker (ubuntu),端口不再使用,我是一个快乐的家伙,去吃午饭了。