diff --git a/bes/BES-9.5.2.4703.tar.gz b/bes/BES-9.5.2.4703.tar.gz new file mode 100644 index 0000000..f83d198 Binary files /dev/null and b/bes/BES-9.5.2.4703.tar.gz differ diff --git a/bes/Dockerfile b/bes/Dockerfile new file mode 100644 index 0000000..ab3eb9f --- /dev/null +++ b/bes/Dockerfile @@ -0,0 +1,23 @@ +FROM openjdk:11 + +ENV BES_HOME="/bes" + +RUN mkdir ${BES_HOME} + +ADD BES-9.5.2.4703.tar.gz ${BES_HOME}/ + +COPY entrypoint.sh ${BES_HOME}/entrypoint.sh + +RUN chmod +x ${BES_HOME}/entrypoint.sh + +RUN echo "export JAVA_HOME=/usr/local/openjdk-11" >> /etc/profile +RUN echo "export PATH=$JAVA_HOME/bin:$PATH" >> /etc/profile +RUN echo "export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH" >> /etc/profile + +WORKDIR ${BES_HOME} + +EXPOSE 1900 +EXPOSE 8080 +EXPOSE 8443 + +ENTRYPOINT ["sh","-c","${BES_HOME}/entrypoint.sh"] \ No newline at end of file diff --git a/bes/build.sh b/bes/build.sh new file mode 100644 index 0000000..2eb7132 --- /dev/null +++ b/bes/build.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +docker build -t bes:9.5.2 . \ No newline at end of file diff --git a/bes/entrypoint.sh b/bes/entrypoint.sh new file mode 100644 index 0000000..3b6c271 --- /dev/null +++ b/bes/entrypoint.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +cd ${BES_HOME}/bin + +./iastool start --server --passport "${BES_PASSPORT:-B#2008_2108#es}" --user "${BES_ADMIN_USERNAME:-admin}" --password "${BES_ADMIN_PASSWORD:-B#2008_2108#es}" + +tail -f /dev/null \ No newline at end of file diff --git a/bes/server.config b/bes/server.config new file mode 100644 index 0000000..ab7c493 --- /dev/null +++ b/bes/server.config @@ -0,0 +1,273 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -XX:MaxMetaspaceSize=2048m + -XX:MetaspaceSize=128m + -server + -Djava.awt.headless=true + -XX:+UnlockDiagnosticVMOptions + -XX:+LogVMOutput + -XX:LogFile=${com.bes.instanceRoot}/logs/jvm.log + -Djava.endorsed.dirs=${com.bes.installRoot}/lib/endorsed + -Djava.security.policy=${com.bes.instanceRoot}/conf/security/server.policy + -Xmx4096m + -Xms512m + -Djavax.net.ssl.keyStore=${com.bes.instanceRoot}/conf/security/keystore.jks + -Djavax.net.ssl.trustStore=${com.bes.instanceRoot}/conf/security/cacerts.jks + -Djavax.net.ssl.certificateFile=${com.bes.instanceRoot}/conf/security/cert.pem + -Djavax.net.ssl.certificateKeyFile=${com.bes.instanceRoot}/conf/security/key.pem + -Djavax.net.ssl.certificateChainFile=${com.bes.instanceRoot}/conf/security/chain.pem + -Djava.ext.dirs=${com.bes.javaRoot}/lib/ext${path.separator}${com.bes.javaRoot}/jre/lib/ext${path.separator}${com.bes.installRoot}/lib/ext + -Djavax.xml.stream.XMLInputFactory=com.bes.wstx.stax.WstxInputFactory + -Djdbc.drivers=org.apache.derby.jdbc.ClientDriver + -DANTLR_USE_DIRECT_CLASS_LOADING=true + -Djava.net.preferIPv4Stack=true + -XX:NewRatio=2 + -XX:+HeapDumpOnOutOfMemoryError + -Duser.timezone=Asia/Shanghai + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dmdb/DMInstall.bin b/dmdb/DMInstall.bin new file mode 100644 index 0000000..226fd92 Binary files /dev/null and b/dmdb/DMInstall.bin differ diff --git a/dmdb/Dockerfile b/dmdb/Dockerfile new file mode 100644 index 0000000..1d6475e --- /dev/null +++ b/dmdb/Dockerfile @@ -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"] \ No newline at end of file diff --git a/dmdb/build.sh b/dmdb/build.sh new file mode 100644 index 0000000..131da8a --- /dev/null +++ b/dmdb/build.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +docker build -t dmdb:8 . \ No newline at end of file diff --git a/dmdb/dm.key b/dmdb/dm.key new file mode 100644 index 0000000..af63ce0 Binary files /dev/null and b/dmdb/dm.key differ diff --git a/dmdb/entrypoint.sh b/dmdb/entrypoint.sh new file mode 100644 index 0000000..c5adc40 --- /dev/null +++ b/dmdb/entrypoint.sh @@ -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 diff --git a/dmdb/install_setting.xml b/dmdb/install_setting.xml new file mode 100644 index 0000000..6d3138f --- /dev/null +++ b/dmdb/install_setting.xml @@ -0,0 +1,16 @@ + + + +EN ++08:00 + + + +0 + +/opt/dmdbms + +n + \ No newline at end of file diff --git a/node/Dockerfile b/node/Dockerfile new file mode 100644 index 0000000..564c55f --- /dev/null +++ b/node/Dockerfile @@ -0,0 +1,4 @@ +FROM node:20 + +RUN npm install -g pnpm + diff --git a/node/build.sh b/node/build.sh new file mode 100644 index 0000000..293120b --- /dev/null +++ b/node/build.sh @@ -0,0 +1,3 @@ +#/bin/bash + +docker build -t node:20-pnpm . \ No newline at end of file diff --git a/rabbitmq/Dockerfile b/rabbitmq/Dockerfile new file mode 100644 index 0000000..eab1936 --- /dev/null +++ b/rabbitmq/Dockerfile @@ -0,0 +1,17 @@ +FROM rabbitmq:3.12-management + +# 复制 delayed message exchange 插件 +COPY plugins/rabbitmq_delayed_message_exchange-3.12.0.ez /opt/rabbitmq/plugins/ + +# 复制 enabled_plugins 配置文件 +COPY enabled_plugins /etc/rabbitmq/enabled_plugins + +# 设置权限 +RUN chmod 644 /etc/rabbitmq/enabled_plugins && \ + chmod 755 /opt/rabbitmq/plugins/rabbitmq_delayed_message_exchange-3.12.0.ez + +# 暴露端口 +EXPOSE 5672 15672 + +# 启动 RabbitMQ +CMD ["rabbitmq-server"] diff --git a/rabbitmq/build.sh b/rabbitmq/build.sh new file mode 100644 index 0000000..72a4ece --- /dev/null +++ b/rabbitmq/build.sh @@ -0,0 +1,3 @@ +#/bin/bash + +docker build -t rabbitmq:3.12-management-local . \ No newline at end of file diff --git a/rabbitmq/enabled_plugins b/rabbitmq/enabled_plugins new file mode 100644 index 0000000..85b6c20 --- /dev/null +++ b/rabbitmq/enabled_plugins @@ -0,0 +1 @@ +[rabbitmq_delayed_message_exchange,rabbitmq_management,rabbitmq_prometheus]. \ No newline at end of file diff --git a/rabbitmq/plugins/rabbitmq_delayed_message_exchange-3.12.0.ez b/rabbitmq/plugins/rabbitmq_delayed_message_exchange-3.12.0.ez new file mode 100644 index 0000000..3a2bced Binary files /dev/null and b/rabbitmq/plugins/rabbitmq_delayed_message_exchange-3.12.0.ez differ diff --git a/ubuntu-tools/Dockerfile b/ubuntu-tools/Dockerfile new file mode 100644 index 0000000..149f402 --- /dev/null +++ b/ubuntu-tools/Dockerfile @@ -0,0 +1,7 @@ +FROM ubuntu:22.04 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends gettext-base \ + && rm -rf /var/lib/apt/lists/* + +CMD ["sh", "-c", "top"] \ No newline at end of file diff --git a/ubuntu-tools/build.sh b/ubuntu-tools/build.sh new file mode 100644 index 0000000..799ccb5 --- /dev/null +++ b/ubuntu-tools/build.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +docker build -t ubuntu-tools:22.04 . \ No newline at end of file diff --git a/ylgh-calculate/Dockerfile b/ylgh-calculate/Dockerfile new file mode 100644 index 0000000..1a9da57 --- /dev/null +++ b/ylgh-calculate/Dockerfile @@ -0,0 +1,17 @@ +FROM openjdk:11 + +ENV APP_DIR="/calculate" + +ENV JAVA_OPTS="" + +RUN mkdir -p ${APP_DIR} + +RUN mkdir -p ${APP_DIR}/logs + +ADD calculate.jar ${APP_DIR}/app.jar + +WORKDIR ${APP_DIR} + +EXPOSE 8080 + +ENTRYPOINT ["sh", "-c", "java ${JAVA_OPTS} -Dspring.config.location=${APP_DIR}/application.properties -jar ${APP_DIR}/app.jar > ${APP_DIR}/logs/application.log 2>&1"] diff --git a/ylgh-calculate/build.sh b/ylgh-calculate/build.sh new file mode 100644 index 0000000..21d2014 --- /dev/null +++ b/ylgh-calculate/build.sh @@ -0,0 +1,3 @@ +#/bin/bash + +docker build -t ylgh-calculate:1.0 . \ No newline at end of file diff --git a/ylgh-calculate/calculate.jar b/ylgh-calculate/calculate.jar new file mode 100644 index 0000000..c9ca2ac Binary files /dev/null and b/ylgh-calculate/calculate.jar differ