version: ‘3.8’ # 指定 Docker Compose 文件的版本,确保兼容性
services: # 定义服务列表
mariadb: # 定义名为 mariadb 的服务
container_name: mariadb # 为容器指定一个名称
image: mariadb:latest # 使用 MariaDB 的最新版镜像
ports:
restart: always # 总是重启容器,确保数据库服务的高可用性
environment: # 设置环境变量,用于配置数据库
MYSQL_ROOT_PASSWORD: 12345 # 设置 root 用户的密码
MYSQL_DATABASE: mydatabase # 创建一个名为 mydatabase 的初始数据库
MYSQL_USER: ABC # 创建一个名为 ABC 的普通用户
MYSQL_PASSWORD: 12345 # 设置普通用户的密码
volumes: # 定义卷映射,用于数据持久化
– /vol1/1000/Docker/mariadb/data:/var/lib/mysql # 将宿主机的目录挂载到容器的 MySQL 数据目录
networks:
– appnet # 将服务连接到名为 appnet 的网络
phpmyadmin: # 定义名为 phpmyadmin 的服务
container_name: phpmyadmin # 为容器指定一个名称
image: phpmyadmin/phpmyadmin:latest # 使用 phpMyAdmin 的最新版镜像
ports:
– “8080:80” # 将容器的 80 端口映射到宿主机的 8080 端口,用于访问 phpMyAdmin 界面
restart: always # 总是重启容器,确保 phpMyAdmin 服务的高可用性
environment: # 设置环境变量,用于配置 phpMyAdmin
PMA_PORT: 3306 # 指定 phpMyAdmin 连接的数据库服务器端口
depends_on: # 定义服务依赖,确保在启动 phpMyAdmin 之前 MariaDB 已经启动
– mariadb
networks:
– appnet # 将服务连接到名为 appnet 的网络
networks: # 定义网络列表
appnet: # 定义名为 appnet 的网络
driver: bridge # 使用桥接网络模式,允许服务之间相互通信
原文链接:https://post.smzdm.com/p/a9687lmo/