Docker安装mysql5.7

环境

  • Centos:7
  • Docker: 17.05-ce
  • Mysql: 5.7

1. Mysql外部数据和配置文件路径

  1. msyql配置文件路径:/etc/mysql
  2. mysql数据卷路径:/var/lib/mysql
1.1. 拉取mysql:5.7镜像
docker pull mysql:5.7

2. 创建mysql:5.7容器

宿主机mysql配置文件路径:/root/docker/mysqletc/mysql
宿主机mysql数据卷路径:/root/docker/mysqletc/data
注:路径可以自己定义
2.1. 创建一个临时的msyql:5.7容器,目的是cp 容器里mysql的配置文件
docker run -d -p 3306:3306 --name myMysql -e MYSQL_ROOT_PASSWORD=root mysql:5.7
2.2. 复制容器中的mysql配置文件到宿主机指定目录
从容器中将文件拷贝出来的命令:dokcer cp 容器名称:容器目录 需要拷贝的文件或目录

docker cp myMysql:/etc/mysql /root/docker/mysqletc
2.3. 停止并删除刚才创建的临时容器
docker stop myMysql
dokcer rm myMysql
2.4. 创建并启动mysql:5.7容器
docker run -d --name mysql5.7 -p 33306:3306 --restart always --privileged=true -v /root/docker/mysqletc/mysql:/etc/mysql -v /root/docker/mysqletc/data:/var/lib/mysql -e MYSQL_USER="summit" -e MYSQL_PASSWORD="summit" -e MYSQL_ROOT_PASSWORD="root" mysql:5.7
2.5. 大功告成,查看容器日志
docker logs -f mysql5.7

3. 涉及到的命令行参数

--restart always                                -> 开机启动
--privileged=true                               -> 提升容器内权限
-v /root/docker/mysqletc/mysql:/etc/mysql       -> 映射配置文件
-v /root/docker/mysqletc/data:/var/lib/mysql    -> 映射数据目录
-e MYSQL_USER="summit"                          -> 添加用户summit
-e MYSQL_PASSWORD="summit"                      -> 设置summit用户的密码为summit
-e MYSQL_ROOT_PASSWORD="root"                   -> 设置root的密码为root

参考链接:
https://www.cnblogs.com/0oliumino0/p/10538207.html

posted @ 2019-07-03 14:11  junecoo  阅读(2623)  评论(0编辑  收藏  举报