一、拉取mysql5.7镜像
docker pull mysql:5.7
二、验证镜像是否拉取成功
docker images
三、运行容器(第一次启动需要指定root 的密码)
docker run -it --name 别名 -d -p 3306:3306 镜像ID
查看启动结果:启动失败 (docker ps -a)
指定密码启动(先删除启动失败的容器):
docker rm 容器id
启动:(p 宿主机端口 :容器端口)
docker run -it --name mysql -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root 镜像id
这里我们看到已经启动成功; 一般我们会选择把数据资源挂载到宿主机本地,这样即使我们删除容器,在创建一个容器,只需要指定服务挂载目录即可
四、拷贝容器中的配置和数据:
docker cp 容器id:/etc/mysql/conf.d /home/mysql/
docker cp 容器id:/var/log /home/mysql/
docker cp 容器id:/var/lib/mysql /home/mysql/
五、停止当前容器,并指定挂载文件重启:
docker stop 容器id (停服)
docker rm 容器id (删容器)
docker ps -a (查看全部容器)
挂载启动
docker run --name 别名 -itd -p 3306:3306 -v /home/mysql/conf/:/etc/mysql/conf.d/ -v /home/mysql/log/:/var/log -v /home/mysql/mysql/:/var/lib/mysql/ -e MYSQL_ROOT_PASSWORD=123456 镜像ID
这里我们看到已经启动成功(这里需要注意, 如果使用的是云资源的话, 需要在云平台上把对应的端口给放开); 用工具测试验证: 连接成功