当我在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了,但没用。


当前回答

使用8888端口的是Jupiter,我必须更改Jupiter笔记本的配置文件以在另一个端口上运行。

列出谁在使用该特定端口。 9 . sudo lsof -i -P -n | grep

你可以在~/.jupyter/jupyter_notebook_config.py中指定你想要Jupyter运行的端口,不注释/编辑下面的行:

c.NotebookApp.port = 9999

如果你没有jupyter_notebook_config.py,试着运行jupyter notebook——generate-config。有关Jupyter配置的更多详细信息,请参见此。

其他回答

使用8888端口的是Jupiter,我必须更改Jupiter笔记本的配置文件以在另一个端口上运行。

列出谁在使用该特定端口。 9 . sudo lsof -i -P -n | grep

你可以在~/.jupyter/jupyter_notebook_config.py中指定你想要Jupyter运行的端口,不注释/编辑下面的行:

c.NotebookApp.port = 9999

如果你没有jupyter_notebook_config.py,试着运行jupyter notebook——generate-config。有关Jupyter配置的更多详细信息,请参见此。

我多次遇到同样的问题。重新启动docker似乎可以做到这一点

我试了所有的方法,包括关闭播放功能,但都没有效果。

最后,这个简单的解决方案奏效了。 在应用程序运行定义主机为0.0.0.0和端口5000显式,并bing一切工作

app.run(debug=True,host="0.0.0.0",port=5000)

现在运行应用程序为

docker run -p 5000:5000 <Image Name>

检查docker-compose。Yml,可能会出现端口被指定两次的情况。

version: '3'
services:
  registry:
    image: mysql:5.7
        ports:
      - "3306:3306"             <--- remove either this line or next
      - "127.0.0.1:3306:3306"

我遇到了这个问题。我的简单解决方案是从系统中删除mongodb

Ubuntu中删除mongodb的命令:

sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev

sudo apt-get purge mongodb-10gen 

sudo apt-get autoremove