docker安装mysql 5.7
docker pull mysql:5.7
创建挂载文件
sudo mkdir -p /docker/mysql/{logs,conf,data}
注意:需要复制之前的my.cnf放到conf下面
mysql 文件配置
查看docker中mysql 5.7 配置文件所在位置
https://hub.docker.com/_/mysql
从该文档中可以了解到,mysql的默认配置为/etc/mysql/my.cnf,该文件中包含了一个额外的数据目录/etc/mysql/conf.d 或者/etc/mysql/mysql.conf.d
# 创建不挂载文件的mysql容器
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql_test mysql:5.7
# 进入容器内,
docker exec -it mysql_test bash
# 查看文件配置,以防不存在
cat /etc/mysql/mysql.conf.d
删除测试容器并新建挂载容器
# 退出容器
exit
# 查看正在运行的容器
docker ps
# 停止容器
docker stop IMAGEID
# 删除容器
docker rm IMAGEID
# 创建挂载容器
docker run -p 3306:3306 --privileged=true -v /docker/mysql/logs:/logs -v /docker/mysql/data:/var/lib/mysql -v /docker/mysql/conf/my.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7