拉取镜像

1
docker pull mysql

配置文件

1
mkdir -p /home/docker/mysql/{conf,data}

临时容器

1
docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:latest

复制配置文件

1
docker cp mysql:/etc/mysql/my.cnf /home/docker/mysql/conf/my.cnf

删除临时容器

1
docker rm -f mysql

修改配置文件

1
vim /home/docker/mysql/conf/my.cnf

将以下内容复制到my.cnf

1
2
3
4
5
[client]
default-character-set=utf8mb4

[mysqld]
default-authentication-plugin=mysql_native_password

运行容器

1
2
3
4
5
docker run --name mysql -p 3306:3306 \
-v /home/docker/conf:/etc/mysql/conf.d \
-v /home/docker/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
--restart=always -d mysql:latest