优化dmdb脚本

This commit is contained in:
allencai
2026-01-22 17:32:30 +08:00
parent c54eea076a
commit 3e50a6db9f
3 changed files with 17 additions and 18 deletions
+14 -15
View File
@@ -1,26 +1,25 @@
FROM ubuntu:22.04 # 构建阶段:复制安装文件并执行安装
FROM ubuntu:22.04 AS builder
ENV DM8_TMP_PATH="/dm8-tmp" ENV DM8_TMP_PATH="/dm8-tmp"
RUN mkdir -p ${DM8_TMP_PATH}
COPY DMInstall.bin ${DM8_TMP_PATH}/ COPY DMInstall.bin ${DM8_TMP_PATH}/
COPY install_setting.xml ${DM8_TMP_PATH}/ COPY install_setting.xml ${DM8_TMP_PATH}/
RUN chmod +x ${DM8_TMP_PATH}/DMInstall.bin && \
${DM8_TMP_PATH}/DMInstall.bin -q ${DM8_TMP_PATH}/install_setting.xml && \
rm -rf ${DM8_TMP_PATH}
# 运行阶段:只复制安装后的软件和必要文件
FROM ubuntu:22.04
COPY --from=builder /opt/dmdbms /opt/dmdbms
COPY entrypoint.sh /entrypoint.sh COPY entrypoint.sh /entrypoint.sh
RUN chmod +x ${DM8_TMP_PATH}/DMInstall.bin RUN useradd -m dmdba && \
chmod +x /entrypoint.sh && \
RUN chmod +x /entrypoint.sh mkdir -p /init.db && \
chown -R dmdba /opt/dmdbms
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 / WORKDIR /
+1 -1
View File
@@ -1,3 +1,3 @@
#!/bin/bash #!/bin/bash
docker build -t dmdb:8 . docker build --no-cache -t dmdb:8 .
+2 -2
View File
@@ -21,7 +21,7 @@ if [ ! -f "$DM_INI_PATH" ]; then
echo "初始化数据库..." 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}" 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 if [ -f "$DM_LICENSE_PATH" ]; then
echo "复制许可证..." echo "复制许可证..."
cp $DM_LICENSE_PATH ${DM_PATH}/bin/dm.key cp $DM_LICENSE_PATH ${DM_PATH}/bin/dm.key
chown dmdba ${DM_PATH}/bin/dm.key chown dmdba ${DM_PATH}/bin/dm.key
@@ -44,7 +44,7 @@ if [ ! -f "$DM_INI_PATH" ]; then
done done
echo "初始化完成." echo "初始化完成."
else else
if -f "$DM_LICENSE_PATH"; then if [ -f "$DM_LICENSE_PATH" ]; then
echo "复制许可证..." echo "复制许可证..."
cp $DM_LICENSE_PATH ${DM_PATH}/bin/dm.key cp $DM_LICENSE_PATH ${DM_PATH}/bin/dm.key
chown dmdba ${DM_PATH}/bin/dm.key chown dmdba ${DM_PATH}/bin/dm.key