1、拉取mysql
docker pull mysql:5.7
2、启动容器
docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --default-authentication-plugin=mysql_native_password
3、创建windows里需要被映射的目录
4、复制需要映射的文件
docker cp mysql5.7:/etc/mysql/ D:/docker/mysql/conf/
5、关闭并删除镜像
docker stop mysql5.7
docker rm mysql5.7
6、启动带映射目录的mysql并设置为自启动
--restart具体参数值详细信息:
no // 默认策略,容器退出时不重启容器;
on-failure // 在容器非正常退出时(退出状态非0)才重新启动容器;
on-failure:3 // 在容器非正常退出时重启容器,最多重启3次;
always // 无论退出状态是如何,都重启容器;
unless-stopped // 在容器退出时总是重启容器,但是不考虑在 Docker 守护进程启动时就已经停止了的容器。
docker run --name mysql5.7 -p 3306:3306 --restart=always -v /d/docker/mysql/datadir:/var/lib/mysql/ -v /d/docker/mysql/conf:/etc/mysql/ -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --default-authentication-plugin=mysql_native_password
docker update --restart=always 容器ID(或者容器名)