出于安全原因,MySQL不允许运行在默认端口3306,需要更改运行端口。
MySQL运行端口更改,详见下文Docker compose配置:
version: "3"
services:
halodb:
image: mysql:8.0.31
container_name: halodb
restart: on-failure:3
networks:
halo_network:
command:
- --default-authentication-plugin=mysql_native_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --explicit_defaults_for_timestamp=true
volumes:
- ./mysql:/var/lib/mysql
- ./mysqlBackup:/data/mysqlBackup
ports:
- "13306:13306"
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-P", "13306", "--silent"]
interval: 3s
retries: 5
start_period: 30s
environment:
- MYSQL_ROOT_PASSWORD=xxxxxxxxxxxx123
- MYSQL_DATABASE=halo
- MYSQL_TCP_PORT=13306
networks:
halo_network:
参照上文,仅需要在环境变量中指定MYSQL_TCP_PORT
参数更改MySQL默认运行端口。