启动用户空间代理时出错:侦听 tcp 0.0.0.0:3306:绑定:地址已在使用中

2022-08-30 10:33:33

我必须制作应用程序并交付Dockerfile,但我真的被困在这个上面。在此之前,我的机器上安装了一个噩梦般的wile。Laravellaravel

我正在尝试获取图像并按照此处的步骤操作:http://www.spiralout.eu/2015/12/dockervel-laravel-development.htmldockervel

但是当我运行datisan make:auth时,它会在下面给出这个错误:

**ERROR:** for dockervel_mysql_1  **Cannot restart container** c258b418c03cbd6ec02c349c12cf09403f0eaf42fa9248019af7860d037d6474: **driver failed programming external connectivity on endpoint dockervel_mysql_1** (da3dd576458aa1fe3af7b539c48b9d61d97432cf5e9ee02d78562851f53981ae): E**rror starting userland proxy: listen tcp0.0.0.0:3306: bind: address already in use.**

我已尝试更改docker-compose.yml

   ports:
     - "8084:80"

仍然没什么,也试图在我的机器上停止apache2(),也尝试删除docker容器。service apache2 stopdocker-compose restartdockervel_mysql_1

我不得不提一下,我已经有一个.Laravel proj./var/www/laravel

请帮忙!


答案 1

我有同样的问题和

sudo netstat -nlpt |grep 3306

向我展示了PID以及它是由哪个服务(mysgld)启动的。每当我试图杀死PID时,它就会再次启动。但是当我停止服务时,问题已得到解决

sudo service mysql stop

请注意,您必须使用 而不是 。mysqlmysqld

我希望这将为您做到这一点 - 我能够毫无问题地运行docker-compose up


答案 2

尝试使用端口杀死所有进程:3306

sudo kill `sudo lsof -t -i:3306`

然后,运行您的 Docker 容器:

sudo docker-compose up

推荐