Docker 安装 mysql 详解
制作its-mysql:1.0
镜像
说明:
在使用基于centos+mysql的方式写Dockerfile做镜像,发现体积过于太大,是docker hub上提供的mysql镜像的大小3~4倍,docker hub上的大小为324MB,所以这里选型使用官网的镜像。
使用两种方式制作镜像
第一种:
1)下载镜像
docker pull mysql:5.6.38
镜像地址:https://hub.docker.com/_/mysql/
2)、创建数据库盘目录
mkdir -p /home/docker/Mysql/mysql_data
3)、启动镜像
docker run -d -p 3306:3306 -e mysqld -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_USER=its -e MYSQL_PASSWORD=its -e MYSQL_DATABASE=its -v /home/docker/Mysql/mysql_data:/var/lib/mysql --name itsDB -v /etc/localtime:/etc/localtime:ro mysql:5.6.38 --lower_case_table_names=1
- -d 后台运行
- -p 设定映射端口
- -e 设定环境变量
- -v mysqldata 目录映射到主机上
- -v /etc/localtime:/etc/localtime:ro 设置容器的时间与宿主机同步
- --name 取个名字
- --lower_case_table_names=1 设置表名参数名等忽略大小写
4)、查看镜像
docker ps
返回
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e7e5ca7b8f77 mysql:5.6.38 "docker-entrypoint..." 4 seconds ago Up 3 seconds 0.0.0.0:3306->3306/tcp itsDB
链接即可,mysql 容器创建成功
这个方式非常简单,方便,但是有一定的局限性,比如我像一次执行,把脚本给跑进去,这个就需要使用 Dockerfile文件了。
第二种方式:Dockerfile
地址:
http://www.jb51.net/article/115422.htm
里面写的很详细了,也就不重复写了,核心思想就是 把脚本穿上去,然后在启动后,把数据一同跑进去。