MySQL
创建挂载的工作目录
mkdir -p /home/docker/mysql/{mydir,datadir,conf,source}
编写docker-compose.yaml
version: ‘3’
services/
mysql:
restart: always
image: mysql:5.7.38 #该版本漏洞较少
container_name: mysql-lable
volumes:
- /home/docker/mysql/mydir:/mydir
- /home/docker/mysql/datadir:/var/lib/mysql
- /home/docker/mysql/conf/my.cnf:/etc/my.cnf
# 数据库还原目录 可将需要还原的sql文件放在这里
- /home/docker/mysql/source:/docker-entrypoint-initdb.d
environment:
- “MYSQL_ROOT_PASSWORD=123456”
- “MYSQL_DATABASE=student”
- “TZ=Asia/Shanghai”
ports:
# 使用宿主机的3306端口映射到容器的3306端口
# 宿主机:容器
- 3306:3306
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
编写数据库配置文件/apps/mysql/conf/my.cnf
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
character-set-client-handshake=FALSE
collation-server=utf8_unicode_ci
init_connect=‘SET NAMES utf8’
max_connections = 4096
max_connect_errors = 100000
lower_case_table_names=1
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
启动
先检查端口有没有被占用
netstat -tunlp |grep 3306
docker-compose up -d