2团
Published on 2024-08-16 / 13 Visits
0
0

MySQL的Dockerfile变更TCP端口

出于安全原因,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默认运行端口。


Comment