前言
- 本次仅搭建单一的mysql服务.
- 如果不确定镜像的配置文件目录, 可以通过 docker inspect 镜像名 来查看具体的配置信息.
- MYSQL_ROOT_HOST: '%' 该语句可以允许mysql进行远程连接.
- 使用docker-compose.yaml时, 请自行去除注释.
目录结构
web/ /web/目录
|
├─ mysql/ mysql目录
| ├─ conf/ 配置文件目录
| | └─ my.cnf 配置文件
| ├─ log/ 日志目录
| └─ data/ 数据目录
|
└─ docker-compose.yaml docker-composer的配置文件
docker-compose.yaml配置文件说明
:ro 表示指定该 volume 为只读
# 指定 docker-compose 文件的版本
version: "3"
# 定义应用程序的服务
services:
# 服务名
mysql:
restart: always
# mysql镜像, 可选5.7或8
image: mysql:5.7
environment:
# root密码
MYSQL_ROOT_PASSWORD: 1234@5678
# 允许远程连接
MYSQL_ROOT_HOST: '%'
# 挂载卷 <宿主机路径>:<容器路径>
volumes:
# docker时间同步
- /etc/localtime:/etc/localtime:ro
# 映射日志目录
- ./mysql/log:/var/log/mysql
# 映射配置目录
- ./mysql/conf:/etc/mysql/mysql.conf.d:rw
# 映射数据目录
- ./mysql/data:/var/lib/mysql:rw
# 容器名称
container_name: mysql
# 端口映射 <宿主机端口>:<容器端口>
ports:
- 3306:3306
数据库配置文件
如果不需要特别配置数据库, 可以不在conf目录中添加配置文件
启动容器
# 启动容器
docker-compose up -d