2017-06-13 55 views
0

我对Docker真的很陌生。我试图运行Wordpress,并且遇到了错误。Docker:意外错误(Failure EADDRINUSE)

$ docker-compose up -d 
testpublichtml_mariadb_1 is up-to-date 
Starting 00b4dc8e3264_testpublichtml_wordpress_1 

ERROR: for wordpress Cannot start service wordpress: driver failed programming external connectivity on endpoint 
00b4dc8e3264_testpublichtml_wordpress_1 (63165c221c0b2b11d513e97d35afa39146790086115029b9bb229212d0c8c06a): Error starting userland proxy: Bind for 0.0.0.0:80: unexpected error (Failure EADDRINUSE) 
ERROR: Encountered errors while bringing up the project. 
$ 

我的猜测是,试图检查,如果事情是在端口80,虽然我不知道如何检查。

当我进入netstat -tulnp | grep ':80',我得到:

$ netstat -tulnp | grep ':80' 
netstat: option requires an argument -- p 
Usage: netstat [-AaLlnW] [-f address_family | -p protocol] 
netstat [-gilns] [-f address_family] 
netstat -i | -I interface [-w wait] [-abdgRtS] 
netstat -s [-s] [-f address_family | -p protocol] [-w wait] 
netstat -i | -I interface -s [-f address_family | -p protocol] 
netstat -m [-m] 
netstat -r [-Aaln] [-f address_family] 
netstat -rs [-s] 

回答

2

也许你有一些服务端口80上运行要进行检查,执行以下命令。

netstat -tulnp | grep ':80'

最后一列是你的进程的PID /程序名称。如果你想杀死它,使用下面的命令。

kill PID

之后,你应该能够启动你的容器。

+0

当我输入'kill PID'时,我得到'-bash:kill:PID:参数必须是进程或作业ID' – rpivovar

+1

您不必输入PID字。 PID字必须替换'netstat -tulnp |的输出最后一列的值grep':80''。请确认答案,如果它解决了你的问题。 – kstromeiraos

+0

我不确定“最后一列”是什么意思。我在我的问题中添加了我输入此命令时得到的消息。 – rpivovar