参考文档

部署步骤

1. 拉取镜像

这里我拉取了tag为5.7的镜像

docker pull mysql:5.7

2. 创建需要映射的目录

因为需要自定义mysql的配置,所以需要一个配置目录;

因为需要将mysql生成的数据挂载到本地,所以需要一个数据目录;

# 创建mysql 数据目录
mkdir -p /root/mysql/data
# 创建配置文件
touch /root/mysql/my.cnf

3. 编辑配置文件

/root/mysql/my.cnf

[mysqld]
explicit_defaults_for_timestamp=true
character-set-server=utf8
collation-server=utf8_unicode_ci
init_connect='SET NAMES utf8;'

4. 启动

docker run --name mysql57 -p 3306:3306 -v /root/mysql/my.cnf:/etc/my.cnf:ro -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234asdfQ -d mysql:5.7

5. 检测是否启动成功

docker exet -it mysql57 /bin/bash
mysql -uroot -p

上述过程简化成shell自动化脚本

#! /bin/bash
docker pull mysql:5.7
mkdir -p /root/mysql/data
touch /root/mysql/my.cnf (
cat <<EOF
[mysqld]
explicit_defaults_for_timestamp=true
character-set-server=utf8
collation-server=utf8_unicode_ci
init_connect='SET NAMES utf8;'
EOF
) > /root/mysql/my.cnf docker stop mysql57
docker rm mysql57
docker run --name mysql57 -p 3306:3306 -v /root/mysql/my.cnf:/etc/my.cnf:ro -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234asdfQ -d mysql:5.7

最新文章

  1. mysql数据去除重复及相关优化(转)
  2. AjaxFormSubmit使用demo
  3. 获取 input 单选框和多选框的值
  4. C#+OpenGL编程之再见小桃子(The Tao Framework)
  5. OWASP 2013年十大Web应用安全漏洞
  6. Android视图框架
  7. MarkDown 学习笔记
  8. 学Java必看,不看的人都后悔了
  9. Scala入门(1)Linux下Scala(2.12.1)安装
  10. spark分区数,task数目,core数,worker节点个数,excutor数量梳理
  11. Appnium-API-Session
  12. Windows安装Git
  13. C++读写图片数据转成Base64格式
  14. 【转】Python之系统交互(subprocess)
  15. Valgrind使用【转】
  16. #mxnet# 权值共享
  17. Generalization and Equilibrium in Generative Adversarial Nets
  18. &#39;Table is Marked as crashed and should be repaired Error&#39;.Mysql表损坏解决方案
  19. 音频自动增益 与 静音检测 算法 附完整C代码【转】
  20. 推荐一个配置linux服务的网站

热门文章

  1. Redis-&gt;主从复制-&gt;哨兵模式(高可用)
  2. selenium3.0-selenium发展史
  3. 如何修改git commit的author信息
  4. ThinkPHP5使用PHPExcel实现数据导出功能
  5. 使用docker创建rabbitMQ容器
  6. 洛谷P3694 邦邦的大合唱站队【状压dp】
  7. 标记下 &#39;net 查壳/脱壳/加壳&#39; 工具
  8. WSL配置高翔vslam环境
  9. (私人收藏)React教程手册
  10. 如何使用SVG及其动画技术为你的 Web 前端开发带来一些新鲜的体验