bi-gateway/Dockerfile
2025-07-15 13:12:39 +08:00

83 lines
2.8 KiB
Docker

FROM openjdk:8
ARG JAR_FILE="./target/*.jar"
ARG APP_NAME="bi-gateway"
ARG SERVER_PORT=80
ARG PROFILES="dev"
ARG SPRING_CLOUD_SENTINEL_ENABLED="false"
ARG SPRING_CLOUD_SENTINEL_EAGER="false"
# license配置
ARG LICENSE_PATH="/opt/license/verifyinfo"
ARG LICENSE_REDIS_HOST="10.0.5.17:6679"
ARG LICENSE_REDIS_PWD="Do1admin@hr123"
ARG LICENSE_IP="10.0.5.17"
ARG NACOS_USERNAME="nacos"
ARG NACOS_PASSWORD="nacos"
# 内存配置
ENV JAVA_OPTS "-Xmx2048m -Xss256k"
#启动环境配置
ENV PROFILES $PROFILES
#工作路径
ENV WORK_PATH "/home"
#日志路径
ENV LOG_FILE "logs/app.log"
#服务端口
ENV SERVER_PORT $SERVER_PORT
# NACOS 配置
ENV NACOS_SERVER $NACOS_SERVER
ENV NACOS_NAMESPACE $NACOS_NAMESPACE
ENV NACOS_USERNAME $NACOS_USERNAME
ENV NACOS_PASSWORD $NACOS_PASSWORD
ENV LICENSE_PATH $LICENSE_PATH
ENV LICENSE_REDIS_HOST $LICENSE_REDIS_HOST
ENV LICENSE_REDIS_PWD $LICENSE_REDIS_PWD
ENV LICENSE_IP $LICENSE_IP
ENV LOGGIN_FILE $LOGGIN_FILE
# Sentinel配置
ENV SPRING_CLOUD_SENTINEL_ENABLED $SPRING_CLOUD_SENTINEL_ENABLED
ENV SPRING_CLOUD_SENTINEL_EAGER $SPRING_CLOUD_SENTINEL_EAGER
ENV SPRING_CLOUD_SENTINEL_TRANSPORT_PORT $SPRING_CLOUD_SENTINEL_TRANSPORT_PORT
ENV SPRING_CLOUD_SENTINEL_TRANSPORT_DASHBOARD $SPRING_CLOUD_SENTINEL_TRANSPORT_DASHBOARD
#设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
VOLUME /tmp
EXPOSE ${SERVER_PORT}
#WITH_SKYWALKING# ADD skywalking-agent.tar.gz /lib/
COPY ${JAR_FILE} ${WORK_PATH}/app.jar
RUN sh -c 'touch ${WORK_PATH}/app.jar'
#ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom --server.port=$SERVER_PORT -Dapollo.meta=$APOLLO_META -Dapp.id=$APOLLO_ID -Dspring.profiles.active=$PROFILES -jar $WORK_PATH/app.jar " ]
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom \
-Dserver.port=$SERVER_PORT \
-Dspring.cloud.nacos.config.server-addr=$NACOS_SERVER \
-Dspring.cloud.nacos.config.namespace=$NACOS_NAMESPACE \
-Dspring.cloud.nacos.config.username=$NACOS_USERNAME \
-Dspring.cloud.nacos.config.password=$NACOS_PASSWORD \
-Dspring.cloud.nacos.discovery.server-addr=$NACOS_SERVER \
-Dspring.cloud.nacos.discovery.username=$NACOS_USERNAME \
-Dspring.cloud.nacos.discovery.password=$NACOS_PASSWORD \
-Dspring.cloud.nacos.discovery.namespace=$NACOS_NAMESPACE \
-Dspring.profiles.active=$PROFILES \
-Ddo1.license=$LICENSE_PATH \
-Dredis.host=$LICENSE_REDIS_HOST \
-Dredis.pwd=$LICENSE_REDIS_PWD \
-Dlicense.ip=$LICENSE_IP \
-Dlogging.file=$LOGGIN_FILE \
-Dspring.cloud.sentinel.enabled=$SPRING_CLOUD_SENTINEL_ENABLED \
-Dspring.cloud.sentinel.eager=$SPRING_CLOUD_SENTINEL_EAGER \
-Dspring.cloud.sentinel.transport.port=$SPRING_CLOUD_SENTINEL_TRANSPORT_PORT \
-Dspring.cloud.sentinel.transport.dashboard=$SPRING_CLOUD_SENTINEL_TRANSPORT_DASHBOARD \
-Duser.timezone=GMT+08 -jar $WORK_PATH/app.jar" ]