Docker Compose:每个套接字地址(协议/网络地址/端口)通常只允许使用一次

Docker Compose:每个套接字地址(协议/网络地址/端口)通常只允许使用一次,docker,docker-compose,Docker,Docker Compose,我正在尝试从此处运行docker-compose.yml: 我尝试在Intellij IDEA社区版中运行docker compose文件-使用docker插件202.7319.5 下面是使用的docker-compose.yaml文件: 以下是有关已安装Docker Desktop的详细信息: OS: Windows Version: 2.3.0.4(46911) Channel: Stable Engine: 19.03.12 Compose: 1.26.2 我在控制台中得到的输出: ER

我正在尝试从此处运行docker-compose.yml:

我尝试在Intellij IDEA社区版中运行docker compose文件-使用docker插件202.7319.5

下面是使用的docker-compose.yaml文件:

以下是有关已安装Docker Desktop的详细信息:

OS: Windows
Version: 2.3.0.4(46911)
Channel: Stable
Engine: 19.03.12
Compose: 1.26.2
我在控制台中得到的输出:

ERROR: for book-project_mysql_1  Cannot start service mysql: Ports are not available: listen tcp 0.0.0.0:3306: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.
ERROR: for mysql  Cannot start service mysql: Ports are not available: listen tcp 0.0.0.0:3306: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.
Encountered errors while bringing up the project.

端口3306已被其他应用程序使用。您可以将MySQL部署到另一个端口

docker compose示例:

版本:“3”
服务:
mysql:
图片:mysql:最新版本
主机名:mysql
重新启动:始终
环境:
MYSQL\u ROOT\u密码:rootpassword
MYSQL_数据库:bookproject
MYSQL\u用户:dbuser
MYSQL_密码:dbpassword
端口:
- "3307:3306"
卷数:
-数据库数据:/var/lib/mysql
-./src/main/resources/db/init.sql:/data/application/init.sql
命令:--init file/data/application/init.sql
phpmyadmin:
图片:phpmyadmin/phpmyadmin:latest
链接:
-mysql:db
端口:
- "8081:80"
bookapp:
生成:/
重新启动:失败时
端口:
- "8080:8080"
环境:
-等待\u HOSTS=mysql:3307
-等待\u主机\u超时=300
-等待\u睡眠\u间隔=30
-等待\u主机\u连接\u超时=30
#-默认路径=
取决于:
-mysql
-phpmyadmin
卷数:
数据库单元数据:
“端口不可用:侦听tcp 0.0.0.0:3306”

端口3306已在使用。

在docker compose文件中:

尝试将主机上的映射端口更改为其他端口(例如:3366):


我通过在任务管理器中结束“mysqld.exe”进程解决了这个问题。因为此进程已占用端口3306

首先,我必须找出哪个程序正在使用端口。资源监视器的windows集成gui在这里帮助了我

您是否在主机上运行MySQL(在容器中或Docker外部)?该错误消息显示“主机上的端口3306已在使用中”;触发它的是端口3306,它是
ports:
设置中的第一个端口。
ports:
  - "3306:3306"   # Map TCP port 3306 in the container to port 3306 on the Docker host.
version: '3'

services:
  mysql:
    image: mysql:latest
    hostname: mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
      MYSQL_DATABASE: bookproject
      MYSQL_USER: dbuser
      MYSQL_PASSWORD: dbpassword
    ports:
      - "3366:3306"