解决:ERROR: for nginx Cannot start service nginx: Ports are not available: listen tcp 0.0.0.0:80
一、问题场景在 Mac 上安装 docker 后执行以下命令:docker-compose up提示以下错误:ERROR: for nginx Cannot start service nginx: Ports are not available:listen tcp 0.0.0.0:80: bind: address already in use二、问题原因通过...
·
一、问题场景
在 Mac 上的 docker 配置项目下执行以下命令:
docker-compose up
提示以下错误:
ERROR: for nginx Cannot start service nginx: Ports are not available:
listen tcp 0.0.0.0:80: bind: address already in use
二、问题原因
通过以上错误提示发现 80 端口已经被占用,看一下被谁占用了:
bash-3.2# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 117 root 4u IPv6 0x56 0t0 TCP *:http (LISTEN)
httpd 371 _www 4u IPv6 0x56 0t0 TCP *:http (LISTEN)
httpd 2452 _www 4u IPv6 0x56 0t0 TCP *:http (LISTEN)
httpd 2455 _www 4u IPv6 0x56 0t0 TCP *:http (LISTEN)
httpd 2456 _www 4u IPv6 0x56 0t0 TCP *:http (LISTEN)
httpd 5443 _www 4u IPv6 0x56 0t0 TCP *:http (LISTEN)
发现是 Apache 占用了 80 端口。
我的系统是:MacOS Catalina 10.15.4(不确定是不是升级新系统的原因),开机后会自动启动 Apacha,这个会自动占用 80 端口,如果想启动 Nginx 监听 80 端口,必须停掉 Apacha。
三、解决方案
使用以下命令可以停掉 Apacha:
sudo apachectl stop
停掉之后再执行以下命令就没什么问题了:
docker-compose up
搞定!
更多推荐
已为社区贡献2条内容
所有评论(0)