当我在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了,但没用。
当我在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了,但没用。
当前回答
如果你有同样的问题,并且是在Windows上,只是一个旁注:
在我的情况下,进程在我的方式只是grafana-server.exe。因为我首先下载了二进制版本并双击可执行文件,现在它作为一个服务由用户SYSTEM启动,我不能taskkill(没有权限)
我必须进入Windows的“服务管理器”,搜索“Grafana”服务,并停止它。此后,端口3000不再被占用。
希望这能有所帮助。
其他回答
For Linux / Unix:
简单搜索linux实用程序使用以下命令
netstat -nlp | grep 8888
它将显示在该端口上运行的进程,然后使用该进程的PID(在行中查找PID)杀死该进程。
kill PID
我解决了这个sudo服务redis-server停止
我今天下午升级了我的码头机,遇到了同样的问题。我尝试重新启动docker,但没有运气。
最后,我不得不重新启动我的电脑,它工作了。绝对是个bug。
你可以用下面的命令杀死监听该端口的进程:
kill -9 $(lsof -t -i tcp:<port#>)
ex :
(lsof -t -i tcp:<port#>)
或者ubuntu:
Sudo lsof -t -i:8000 '
lsof的手册页:https://man7.org/linux/man-pages/man8/lsof.8.html
-9是硬杀,不检查任何deps。
(不相关,但可能有用,如果它的PORT 5000神秘)-罪魁祸首进程是由于Mac OS monterery。
端口5000通常用于为本地开发服务器提供服务。当更新到最新的macOS操作系统时,我无法将docker绑定到端口5000,因为它已经在使用中。(您可能会发现一条类似Port 5000已被使用的消息。)
通过运行lsof -i:5000,我发现使用端口的进程名为ControlCenter,这是一个原生macOS应用程序。如果这种情况发生在您身上,即使您使用暴力(并杀死)应用程序,它也会重新启动。在我的笔记本电脑中,lsof -i:5000返回控制中心正在被id为433的进程使用。我可以杀死所有-p 433,但macOS不断重新启动进程。
在这个端口上运行的进程原来是一个AirPlay服务器。你可以在
系统首选项›共享,取消检查AirPlay接收器以释放端口5000。
改变network_mode:“bridge”到“host”。
这与
version: '2.2'
services:
bind:
image: sameersbn/bind:latest
dns: 127.0.0.1
ports:
- 172.17.42.1:53:53/udp
- 172.17.42.1:10000:10000
volumes:
- "/srv/docker/bind:/data"
environment:
- 'ROOT_PASSWORD=secret'
network_mode: "host"