银河麒麟V10(飞腾2000+ ARM)环境下构建达梦V8数据库容器镜像

1、在银河麒麟V10(飞腾2000+ ARM)设备下,先下载一个镜像,我这里选择了centos;

        docker pull centos:centos7.9.2009

2、启动一个容器;

sudo docker run -itd --name dm8 -p 5236:5236 -v /sys/fs/cgroup:/sys/fs/cgroup --privileged=true --restart=always  centos:centos7.9.2009 /usr/sbin/init

注意:标注红色的部分必须加上,否则会导致达梦服务无法启动 

3、安装必要的组件及其升级,我执行了下面这些命令;

yum update

yum install unzip -y

yum install make

yum install gcc -y

yum -y install centos-release-scl

yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-binutils

scl enable devtoolset-8 bash

echo "source /opt/rh/devtoolset-8/enable" >>/etc/profile
yum install -y bison

4、升级make

wget http://ftp.gnu.org/gnu/make/make-4.2.tar.gz

tar -xzvf make-4.2.tar.gz

cd make-4.2

sudo ./configure

sudo make

sudo make install

sudo rm -rf /usr/bin/make

sudo cp ./make /usr/bin/

make -v

5、升级glibc-2.28

wget  https://mirror.bjtu.edu.cn/gnu/libc/glibc-2.28.tar.xz

tar -xf glibc-2.28.tar.xz -C /usr/local

cd /usr/local/glibc-2.28/

mkdir build

cd build/

sudo ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

make  //make 运行时间较长,可能会有半小时

make install

6、下载达梦安装包,我下载的是这个

   dm8_20220723_FTarm_kylin10_sp1_64_ent.zip

7、按照达梦官方文档,进行安装即可;

安装前准备 | 达梦技术文档

        我只是在配置实例过程中,将path=/dm/data 改成了 path=/home/dmdba;其他完全一样操作。

8、安装完成后,记得删除这些安装包;

    dm8_20220723_FTarm_kylin10_sp1_64_ent.zip

   dm8_20220723_FTarm_kylin10_sp1_64_ent   这是解压的文件夹

glibc-2.28.tar.xz

make-4.2.tar.gz

9、同时umount挂载的路径

 umount -l /mnt

10、将容器保存为镜像,再次用新镜像进行容器创建,完美。

sudo docker commit dm8 dm8:v2.0

docker run -itd --name dm8_c -p 15236:5236 -v /sys/fs/cgroup:/sys/fs/cgroup --privileged=true --restart=always  dm8:v2.0 /usr/sbin/init

你可能会遇到如下错误

【问题1】

Aug 23 06:38:13 66a44f5c13f3 DmAPService[2649]: /dm8/bin/dmap: /lib64/libc.so.6:
 version `GLIBC_2.28' not found (required by ./libdmos.so)
Aug 23 06:38:13 66a44f5c13f3 systemd[1]: DmAPService.service: control proc
ess exited, code=exited status=1
对应解决方案:上述步骤3、4、5

【问题2】

New main PID 182 does not belong to service, and PID file is not owned by ro

对应解决方案:上述步骤2

你可能感兴趣的:(数据库,arm,数据库,linux)