使用docker-compose配置mysql服务
前言
使用docker-compose配置简单mysql服务,可用于本地或测试服务器。
代码
目录结构
docker-compose.yaml
version: '3'
services:
mysql:
restart: always
image: mysql:5.7.16
container_name: my_mysql
volumes:
- ./mydir:/mydir
- ./datadir:/var/lib/mysql
- ./conf/my.cnf:/etc/my.cnf
# 数据库还原目录 可将需要还原的sql文件放在这里
- /docker/mysql/source:/docker-entrypoint-initdb.d
environment:
- "MYSQL_ROOT_PASSWORD=yourpass"
- "MYSQL_DATABASE=mydb"
- "TZ=Asia/Shanghai"
ports:
- 3306:3306
使用
$ docker-compose up
# 后台运行
$ docker-compose up -d
附录
my.cnf
[mysqld]
user=mysql
default-storage-engine=INNODB
#character-set-server=utf8
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
[client]
#utf8mb4字符集可以存储emoji表情字符
#default-character-set=utf8
default-character-set=utf8mb4
[mysql]
#default-character-set=utf8
default-character-set=utf8mb4
总结
- 启动容器的时候,需要先把占用端口的服务关闭
原博客链接:https://www.cnblogs.com/xpengp/