最近学习了一下docker安装DM8。以下是部分笔记。
1.DM8的docker镜像获取
产品下载 | 达梦数据库 (dameng.com) 这里有DM8的docker镜像下载。经测试可以在centos下使用。因此建议首先在centos环境下使用。在unbuntu下这个镜像会无法加载,暂时未了解到应该如何解决,可能需要自己做镜像。
2.docker的安装和测试
docker中文社区,docker帮助,docker手册,docker教程,docker安装手册 - docker中文社区 这里可以参考手册。
这里我们使用的是脚本安装的方法。
更新yum包
sudo yum update
执行docker安装脚本
curl -sSL https://get.docker.com/ | sh
启动docker服务
sudo service docker start
确认docker安装成功
sudo docker run hello-world
这里会报错实际上是因为网络长城的原因,所以我们在国内操作国外镜像可能无法正常拉取,这需要我们为docker设置国内的阿里云镜像加速器。
3.阿里云镜像加速器
创建文件daemon.json文件并添加阿里云镜像
touch /etc/docker/daemon.json
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"]
}
然后重启docker
systemctl restart docker
sudo systemctl status docker
此时我们再重新拉取hello-world镜像,就可以成功了。
docker run hello-world
4.DM8的docker镜像安装
拷贝安装包到 /opt 目录下,执行以下命令导入安装包:
docker load -i dm8_20220822_rev166351_x86_rh6_64_ctm.tar
导入完成后,可以使用 docker images
查看导入的镜像。
镜像导入后,使用 docker run
启动容器,启动命令如下:
docker run -d -p 5236:5236 --restart=always --name dm8_01 --privileged=true -e PAGE_SIZE=16 -e LD_LIBRARY_PATH=/opt/dmdbms/bin -e INSTANCE_NAME=dm8_01 -v /data/dm8_01:/opt/dmdbms/data dm8_single:v8.1.2.128_ent_x86_64_ctm_pack4
此时有报错是因为5236端口已经被占用,需要将原来占用5236端口的dmserver服务停掉再删掉之前加载的容器然后重新加载一遍。
systemctl stop DmServiceDMSERVER
docker rm /dm8_01
docker run -d -p 5236:5236 --restart=always --name dm8_01 --privileged=true -e PAGE_SIZE=16a/dm8_01:/opt/dmdbms/data dm8_single:v8.1.2.128_ent_x86_64_ctm_pack4
容器启动完成后,可以使用 docker ps
查看镜像的启动情况,使用docker start/stop/restart dm8_01 来启停数据库