Docker 错误绑定:端口未使用时地址已被使用
Docker Error bind: address already in use when port is not in use
我正在 运行宁 docker-compose up
以下 docker-compose.yml 文件:
version: '3.7'
services:
mysql_db_container:
image: mysql:latest
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD: rootpassword
ports:
- "3306:3306"
volumes:
- mysql_db_data_container:/var/lib/mysql
adminer_container:
image: adminer:latest
environment:
ADMINER_DEFAULT_SERVER: mysql_db_container
ports:
- "8080:8080"
volumes:
mysql_db_data_container:
我收到以下错误:
ERROR: for mysql_db_container Cannot start service mysql_db_container: Ports are not available: listen tcp 0.0.0.0:3306: bind: address already in use
ERROR: Encountered errors while bringing up the project.
我试过以下方法:
docker-compose stop && docker-compose down
然后
docker ps -a
结果:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
我运行:
netstat | grep :3306
它什么也没返回。
我认为问题可能与 docker-compose 文件有关,但我不确定。非常感谢任何关于如何释放端口以便容器 运行 的想法。
原因:
MySQL 在计算机上已经 运行。
解决方法:
在 mac 上:
系统偏好设置 > MySQL > 停止 MySQL 服务器
我正在 运行宁 docker-compose up
以下 docker-compose.yml 文件:
version: '3.7'
services:
mysql_db_container:
image: mysql:latest
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD: rootpassword
ports:
- "3306:3306"
volumes:
- mysql_db_data_container:/var/lib/mysql
adminer_container:
image: adminer:latest
environment:
ADMINER_DEFAULT_SERVER: mysql_db_container
ports:
- "8080:8080"
volumes:
mysql_db_data_container:
我收到以下错误:
ERROR: for mysql_db_container Cannot start service mysql_db_container: Ports are not available: listen tcp 0.0.0.0:3306: bind: address already in use
ERROR: Encountered errors while bringing up the project.
我试过以下方法:
docker-compose stop && docker-compose down
然后
docker ps -a
结果:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
我运行:
netstat | grep :3306
它什么也没返回。
我认为问题可能与 docker-compose 文件有关,但我不确定。非常感谢任何关于如何释放端口以便容器 运行 的想法。
原因: MySQL 在计算机上已经 运行。
解决方法: 在 mac 上: 系统偏好设置 > MySQL > 停止 MySQL 服务器