一、目的
使用docker来安装和制作达梦数据库镜像,主要为了简化安装、部署、配置数据库。通过docker镜像可以快速的部署和安装达梦数据库,同时也大大节约了服务器的资源。
二、docker 介绍
2.1 介绍
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
2.2 优势
-
更高效的利用系统资源
-
更快速的启动时间
-
一致的运行环境
-
更轻松的维护和拓展
-
更轻松的迁移
三、实际操作
当前达梦数据库镜像是基于centos7-java 的基础镜像进行安装制作。
3.1 拉取 centos7-java 镜像
进入docker hub 中央镜像仓库
[hub.docker.com/] 搜索 centos7-java
如下图所示
进入详细页
拉取基础的 centos7-java镜像 执行 docker pull 命令如下:
docker pull insideo/centos7-java8-build
执行完成查看当前下载的镜像,使用docker images 命令如下:
docker images
3.2 启动容器
启用一个centos7-java 的基础容器,在当前容器中进行达梦数据库的安装
启动命令如下:
docker run -itd insideo/centos7-java8-build
3.3 拷贝安装包到容器
如果直接拷贝iso安装包文件到容器中,容器中进行挂载容易失败,所以最好在宿主机中进挂载 拷贝挂载好的达梦数据库安装包到容器中,进行安装。
- 在宿主机上挂载iso安装包到mnt
mount dm8_20210513_x86_rh6_64_ent_8.1.2.2_pack5.iso /mnt
- 拷贝宿主机上的DMInstall.bin到centos7-java容器
docker cp /mnt/DMInstall.bin ec0542d7deaf:/opt
- 进入centos7-java基础容器
docker exec -it ec0542d7deaf /bin/bash
3.4 容器中安装达梦数据库
- 在容器中安装达梦数据库
执行安装达梦数据库 命令如下:
./DMInstall.bin -i
安装完成,进行实例的初始化。
- 初始化达梦数据库实例
使用dminit 工具进行达梦数据库实例初始化 命令如下:
./dminit PATH=/opt/dmdbms/data
- 启动数据库
使用dmserver工具来启动达梦数据库 命令如下:
./dmserver path=/opt/dmdbms/data/DAMENG/dm.ini
3.5 制作启动脚本
刚才启动的容器 关闭终端数据库也跟着关闭了,还有启动的命令太长,不好记,可以执行一个启动的shell 脚本来简化启动过程。
- 在root目录创建一个启动脚本 startDm.sh
vi /root/startDm.sh
启动命令内容如下:
3.6 导出容器
把刚刚安装好的达梦数据库容器,导出为达梦数据库镜像,可以使用 docker commit 命令:
docker commit ec0542d7deaf dm8:v01
3.7 测试
根据镜像来启动一个达梦数据库容器,指定端口映射为 5236->5236, 启动脚本为 /root/startDm.sh ,容器名称为 dmserver, 进行后台启动。
docker run -itd --name dmserver -p 5236:5236 dm8:v01 /root/startDm.sh
启动完成,可以通过 docker logs dmserver 来查看容器的启动日志。
查看宿主机ip 地址
通过客户端连接测试