所在的位置: mysql >> mysql优势 >> Docker篇Docker安装MyS

Docker篇Docker安装MyS

中科医院曝光资质 http://pf.39.net/bdfyy/dbfzl/160710/4895883.html

Docker容器可以为应用创建一个独立的镜像,当然Mysql也是可以的

由于Docker容器内部文件系统与外部非直接关联因此在Mysql安装以及启动过程中需要建立文件系统目录映射

查找Mysql镜像

dockersearchmysql

上图可见已存在的有很多mysql镜像,当然你也可以检索mysql5.7固定版本的docker镜像,这里我们暂时使用默认镜像

拉取MySql镜像

dockerpullmysql

等待镜像拉取完成

查看已存在镜像

dockerimages

上图中可看出已存在三个镜像其中第一个为我们拉取的Mysql镜像

注:笔者拉取镜像之前此镜像已经存在,因此创建时间显示初次拉取时间,仅供参考不影响操作

创建MySql容器映射目录

拉取完镜像之后并不能直接使用,还需要在本机创建一个容器并启动来使用

上面说到容器内文件系统和外部文件系统并非直接关联,因此我们需要创建一些映射文件目录(非必要操作建议创建映射)

以下目录本人测试使用(MAC),真实映射目录视文件系统而定

Linux生产环境建议/root/mysql

mkdir/Users/zl/mysql/data

映射mysql数据库文件夹

mkdir/Users/zl/mysql/logs

映射mysql日志文件夹

mkdir/Users/zl/mysql/conf

映射mysql配置文件夹

一键创建命令

本人测试

mkdir-p/Users/zl/mysql/data/Users/zl/mysql/logs/Users/zl/mysql/conf

Linux

mkdir-p/root/mysql/data/root/mysql/logs/root/mysql/conf

创建配置文件

此处目录为创建好的配置文件映射目录

cd/Users/zl/mysql/conf

创建配置文件,名称随意,扩展名为cnf

touchmysql.cnf

创建容器并启动

dockerrun-p:--namedockermysql-v/Users/zl/mysql/conf:/etc/mysql/conf.d-v/Users/zl/mysql/logs:/logs-v/Users/zl/mysql/data:/var/lib/mysql-eMYSQL_ROOT_PASSWORD=abcde-dmysql

命令解析

dockerrun

创建一个新的容器并运行一个命令

-p:

建立容器与主机端口映射

--namedockermysql

设置容器名称,后期启动可直接使用名称启动

-v/Users/zl/mysql/conf:/etc/mysql/conf.d

-v/Users/zl/mysql/logs:/logs

-v/Users/zl/mysql/data:/var/lib/mysql

建立容器与主机文件系统目录映射

-eMYSQL_ROOT_PASSWORD=abcde

设置密码的环境变量此环境变量被用于mysqlroot用户链接密码

-e用于设置环境变量

-d表示容器后台运行仅返回容器ID

最后的mysql为镜像名称

查看镜像启动状态以及目录映射结果

dockerps

ls/Users/zl/mysql/data

目录为之前设置的mysql数据文件目录

上图可见mysql容器创建成功并启动成功

/Users/zl/mysql/data目录下的文件已出现说明数据目录映射成功

-

笔者致力于计算机软件开发并分享学习过程,感谢查阅




转载请注明:http://www.aierlanlan.com/grrz/1889.html