services: mariadb: build: context: . dockerfile: Dockerfile container_name: ${MariaDB__NODE_NAME} restart: unless-stopped environment: MARIADB_ROOT_PASSWORD: ${MariaDB__MYSQL_ROOT_PASSWORD} MARIADB_DATABASE: ${MariaDB__MYSQL_DATABASE} MARIADB_USER: ${MariaDB__MYSQL_USER} MARIADB_PASSWORD: ${MariaDB__MYSQL_PASSWORD} MariaDB__BOOTSTRAP: ${MariaDB__BOOTSTRAP} MariaDB__NODE_NAME: ${MariaDB__NODE_NAME} MariaDB__NODE_ADDRESS: ${MariaDB__NODE_ADDRESS} MariaDB__CLUSTER_NAME: ${MariaDB__CLUSTER_NAME} MariaDB__CLUSTER_ADDRESS: ${MariaDB__CLUSTER_ADDRESS} volumes: - ./data/mariadb:/var/lib/mysql - ./conf.d:/etc/mysql/conf.d ports: - "3306:3306" - "4567:4567" - "4567:4567/udp" - "4568:4568" - "4444:4444" networks: default: phpmyadmin: image: phpmyadmin:latest container_name: phpmyadmin depends_on: - mariadb restart: unless-stopped environment: PMA_HOST: ${MariaDB__NODE_ADDRESS} # 指向任意 MariaDB 節點 PMA_PORT: 3306 PMA_USER: ${MariaDB__MYSQL_USER} # 可以用 cluster 用戶 PMA_PASSWORD: ${MariaDB__MYSQL_PASSWORD} ports: - "8080:80" # 本地訪問 http://localhost:8080 networks: - default networks: default: name: mariadb_net