前言
使用docker-compose配置简单mysql服务,可用于本地或测试服务器。
代码
目录结构
![](/images/blog/202304/1682260913xm6kG.png)
docker-compose.yaml
Docker Mysql 文档
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| 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 - /docker/mysql/source:/docker-entrypoint-initdb.d environment: - "MYSQL_ROOT_PASSWORD=yourpass" - "MYSQL_DATABASE=mydb" - "TZ=Asia/Shanghai" ports: - 3306:3306
|
使用
1 2 3 4
| $ docker-compose up
# 后台运行 $ docker-compose up -d
|
附录
my.cnf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| [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
|
总结
- 启动容器的时候,需要先把占用端口的服务关闭