You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Centos 7.4执行Docker入门命令遇4000端口占用错误求助

解决Docker端口绑定失败(address already in use)问题

你遇到的这个错误原因非常明确——你的主机4000端口已经被其他进程占用,Docker无法完成端口转发的绑定操作。下面是具体的解决步骤:

  • 第一步:定位占用4000端口的进程
    在CentOS 7.4环境下,你可以用ss命令快速查询占用端口的进程信息:

    sudo ss -tulpn | grep :4000
    

    执行后会返回类似这样的结果(包含进程ID和名称):

    tcp    LISTEN     0      128    0.0.0.0:4000    0.0.0.0:*    users:(("nginx",pid=1234,fd=6))
    
  • 第二步:处理占用端口的进程
    有两种方案可以选择:

    1. 终止占用端口的进程(如果该进程对你没有用途):
      假设查到的进程ID是1234,执行命令强制终止:
      sudo kill -9 1234
      
      完成后重新运行你的Docker启动命令即可。
    2. 更换Docker的端口映射:
      如果不想停止现有进程,你可以将主机侧的端口换成其他未被占用的端口(比如4001):
      docker run -p 4001:80 friendlyhello
      
      之后访问应用时,使用http://你的服务器IP:4001即可。

另外补充说明:你之前执行的firewall-cmd开放80端口的操作和当前问题无关,那是用于放行容器内部80端口的外部访问权限,当前问题的核心是主机端口被占用,并非防火墙拦截。

内容的提问来源于stack exchange,提问作者SaltedPork

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:00:53