一句话总结就是容器占用的port还没有完全释放

Docker 在启动容器时,报出了下面的错误:

1
docker: Error response from daemon: driver failed programming external connectivity on endpoint gateway_cc39fe5306c1 (cc39fe5306c1ba7633fa14b9bcddb66536153619bf57b84b30673e2328e9284g): Bind for 0.0.0.0:80 failed: port is already allocated.

 

查看进程,发现相关的容器并没有在运行,而 docker-proxy 却依然绑定着端口:

 docker ps
 ps -aux | grep -v grep | grep docker-proxy

 

删除所有容器,停止 doker 进程,然后删除 local-kv.db 这个文件,再启动 docker 就可以了。

 docker rm $(docker ps -aq)
 sudo service docker stop
 sudo rm /var/lib/docker/network/files/local-kv.db
 sudo service docker start

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐