docker images
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,29 @@
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ENV DM8_TMP_PATH="/dm8-tmp"
|
||||
|
||||
RUN mkdir -p ${DM8_TMP_PATH}
|
||||
|
||||
COPY DMInstall.bin ${DM8_TMP_PATH}/
|
||||
|
||||
COPY install_setting.xml ${DM8_TMP_PATH}/
|
||||
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
|
||||
RUN chmod +x ${DM8_TMP_PATH}/DMInstall.bin
|
||||
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
||||
RUN useradd -m dmdba
|
||||
|
||||
RUN ${DM8_TMP_PATH}/DMInstall.bin -q ${DM8_TMP_PATH}/install_setting.xml
|
||||
|
||||
RUN rm -rf ${DM8_TMP_PATH}
|
||||
|
||||
RUN mkdir -p /init.db
|
||||
|
||||
WORKDIR /
|
||||
|
||||
EXPOSE 5236
|
||||
|
||||
ENTRYPOINT ["sh","-c","/entrypoint.sh"]
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
docker build -t dmdb:8 .
|
||||
BIN
Binary file not shown.
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
DM_PATH="/opt/dmdbms"
|
||||
|
||||
DM_DATA_PATH="${DM_PATH}/data"
|
||||
|
||||
DB_NAME="DAMENG"
|
||||
|
||||
DM_INI_PATH="${DM_DATA_PATH}/${DB_NAME}/dm.ini"
|
||||
|
||||
DM_INIT_PWD="${DM_INIT_PWD:-Aa123456}"
|
||||
|
||||
DM_LICENSE_PATH="/license/dm.key"
|
||||
|
||||
mkdir -p ${DM_DATA_PATH}
|
||||
|
||||
chown -R dmdba ${DM_PATH}
|
||||
|
||||
if [ ! -f "$DM_INI_PATH" ]; then
|
||||
echo "初始化数据库..."
|
||||
su - dmdba -c "${DM_PATH}/bin/dminit PATH=${DM_DATA_PATH} DB_NAME=${DB_NAME} SYSDBA_PWD=${DM_INIT_PWD} SYSAUDITOR_PWD=${DM_INIT_PWD}"
|
||||
|
||||
if -f "$DM_LICENSE_PATH"; then
|
||||
echo "复制许可证..."
|
||||
cp $DM_LICENSE_PATH ${DM_PATH}/bin/dm.key
|
||||
chown dmdba ${DM_PATH}/bin/dm.key
|
||||
fi
|
||||
|
||||
echo "启动 DM Server..."
|
||||
su - dmdba -c "${DM_PATH}/bin/dmserver ${DM_INI_PATH} &"
|
||||
|
||||
echo "等待 DM Server 启动..."
|
||||
until $DM_PATH/bin/disql SYSDBA/${DM_INIT_PWD}@localhost:5236 -e "select 1 from dual;" >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
|
||||
echo "DM server is ready."
|
||||
|
||||
echo "执行初始化 SQL..."
|
||||
for sql_file in /init.db/*.sql; do
|
||||
echo "执行 $sql_file..."
|
||||
$DM_PATH/bin/disql SYSDBA/${DM_INIT_PWD}@localhost:5236 \`${sql_file}
|
||||
done
|
||||
echo "初始化完成."
|
||||
else
|
||||
if -f "$DM_LICENSE_PATH"; then
|
||||
echo "复制许可证..."
|
||||
cp $DM_LICENSE_PATH ${DM_PATH}/bin/dm.key
|
||||
chown dmdba ${DM_PATH}/bin/dm.key
|
||||
fi
|
||||
echo "数据库已存在,直接启动..."
|
||||
su - dmdba -c "${DM_PATH}/bin/dmserver ${DM_INI_PATH} &"
|
||||
fi
|
||||
|
||||
tail -f /dev/null
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0"?>
|
||||
<DATABASE>
|
||||
|
||||
<LANGUAGE>EN</LANGUAGE>
|
||||
<TIME_ZONE>+08:00</TIME_ZONE>
|
||||
<!-- key 文件路径 -->
|
||||
<KEY></KEY>
|
||||
<!--安装程序组件类型,取值范围:0、1、2,0 表示安装全部,1 表示安装服务器,2 表示安装
|
||||
客户端。缺省为 0 -->
|
||||
<INSTALL_TYPE>0</INSTALL_TYPE>
|
||||
<!--安装路径,不允许为空。合法的安装路径允许字符的范围是小写字母(a-z)、大写字母(A-Z)、
|
||||
数字(0-9)、下划线(_)、空格( )和中文 -->
|
||||
<INSTALL_PATH>/opt/dmdbms</INSTALL_PATH>
|
||||
<!--是否初始化库,取值范围:Y/N、y/n,不允许为空 -->
|
||||
<INIT_DB>n</INIT_DB>
|
||||
</DATABASE>
|
||||
Reference in New Issue
Block a user