| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- ######################### phase one #########################
- FROM registry.cn-hangzhou.aliyuncs.com/ggcimages/dev-env:maven--3-java-21-debian-bookworm AS compile_stage
- RUN mkdir /opt/build
- WORKDIR /opt/build
- # 复制项目代码到构建目录: /opt/build/pom.xml, /opt/build/src, /opt/build/src/main/java, /opt/build/src/main/resources。
- COPY . /opt/build/
- # 复制 MAVEN 设置文件到默认的配置目录,如果 settings.xml 依赖源配置失效,注释掉下面 COPY 代码,改用项目中 pom.xml 文件设置的依赖源。
- #COPY settings-hz3r.xml /usr/share/maven/conf/settings.xml
- # 清理 -> 构建 -> 打包, -X 打印调试信息。
- RUN mvn clean package -U -DskipTests --color auto
- #RUN mvn clean package -U -DskipTests --color auto -f pom.jar.xml
- #RUN mvn clean package -U -DskipTests -X -e --color auto -f pom.jar.xml
- ######################### phase two #########################
- #FROM registry.cn-hangzhou.aliyuncs.com/ggcimages/dev-env:openjdk--21-ea-buster
- FROM registry.cn-hangzhou.aliyuncs.com/ggcimages/dev-env:eclipse-temurin--21-jre-noble
- WORKDIR /app
- ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 TZ=Asia/Shanghai
- ENV JAVA_OPTS=""
- ENV APP_NAME='zjjhyiwuyq'
- ENV LOGS_PATH=/var/log/app/${APP_NAME} LOG_FILE="app"
- RUN mkdir -p /var/log/app
- # 应用信息配置
- ENV APP_JAR_NAME=business-webapi-1.0.0
- ENV PROFILE=dev
- ENV API_PORT=8100
- ENV API_PATH=api
- # AES 等保要求等安全加密配置
- ENV AB_SECRET_KEY==zSuAV19ef1e59B3F884C9B2024920==
- ENV AB_SECRET_IV=zSUAVPT119ef9f==
- # 运行配置
- ENV SQL_LOGGING_LEVEL=false
- ENV SQL_AGC_LOGGING_LEVEL=false
- ENV SQL_SHARE_LOGGING_LEVEL=false
- ENV REDIS_ENABLED=false
- ENV REDIS_HOST=172.16.10.109
- ENV REDIS_PORT=6379
- ENV REDIS_PASSWD=''
- ENV MYSQL_HOST=172.16.10.109
- ENV MYSQL_PORT=3306
- ENV MYSQL_USER=zjjhyiwuyq
- ENV MYSQL_PASSWD=zjjhyiwuyq123456
- ENV JOB_SERVER_IP='snail-job.domain.com'
- ENV JOB_SERVER_PORT=50051
- ENV JOB_NAMESPACE=764d604ec6fc45f68cd92514c40e9e1a
- ENV JOB_GROUP=zjjhyiwuyq_group
- ENV JOB_TOKEN=SJ_Wyz3dmsdbDOkDujOTSSoBjGQP1BMsVnj
- ENV JWT_KEY='L3jB6cR1sN5xZ8a'
- ENV LOCAL_OSS_DIRECTORY=''
- ENV OSS_BUCKET_NAME='zjjhyiwuyq'
- ENV OSS_SERVER='http://172.16.10.100:9192/'
- ENV OSS_ACCESS_KEY='CMBoDkjkRb457oxCj7ys'
- ENV OSS_ACCESS_SECRET='8uJmULkUFORiTYNfDtj3VBXEwgAgBLNmIYOFi6sN'
- ENV OSS_PUBLIC_ENTRY='http://zjjhyiwuyq.hz3r.cn/'
- ENV ENABLE_TASK_PAYMENT=true
- ENV LD_LIBRARY_PATH /app/lib/linux64/lib:/app/lib/linux64/lib/HCNetSDKCom:${LD_LIBRARY_PATH}
- # 拷贝依赖库到系统,使用系统默认的加载库路径,在系统的/usr/lib文件中加入你Java工程所需要使用的so文件,然后将HCNetSDKCom文件夹下的组件库也复制到/usr/lib目录,HCNetSDKCom文件夹中的组件库不要随意更换路径进行替换。CentOS 64位需拷贝/usr/lib64下。
- COPY ./lib /app/lib
- COPY --from=compile_stage /opt/build/target/business-webapi-1.0.0.jar .
- RUN ls -lith | grep business-webapi
- EXPOSE 8100
- ENTRYPOINT [ "sh", "-c", "java -Duser.timezone=GMT+08 \
- -DLOGS_PATH=${LOGS_PATH} \
- -DSQL_LOGGING_LEVEL=${SQL_LOGGING_LEVEL} \
- -DSQL_AGC_LOGGING_LEVEL=${SQL_AGC_LOGGING_LEVEL} \
- -DSQL_SHARE_LOGGING_LEVEL=${SQL_SHARE_LOGGING_LEVEL} \
- -DREDIS_ENABLED=${REDIS_ENABLED} \
- -DREDIS_PORT=${REDIS_PORT} \
- -DREDIS_PASSWD=${REDIS_PASSWD} \
- -DMYSQL_HOST=${MYSQL_HOST} \
- -DMYSQL_PORT=${MYSQL_PORT} \
- -DMYSQL_USER=${MYSQL_USER} \
- -DMYSQL_PASSWD=${MYSQL_PASSWD} \
- -DJOB_SERVER_IP=${JOB_SERVER_IP} \
- -DJOB_SERVER_PORT=${JOB_SERVER_PORT} \
- -DJOB_NAMESPACE=${JOB_NAMESPACE} \
- -DJOB_GROUP=${JOB_GROUP} \
- -DJOB_TOKEN=${JOB_TOKEN} \
- -DJWT_KEY=${JWT_KEY} \
- -DLOCAL_OSS_DIRECTORY=${LOCAL_OSS_DIRECTORY} \
- -DOSS_BUCKET_NAME=${OSS_BUCKET_NAME} \
- -DOSS_SERVER=${OSS_SERVER} \
- -DOSS_ACCESS_KEY=${OSS_ACCESS_KEY} \
- -DOSS_ACCESS_SECRET=${OSS_ACCESS_SECRET} \
- -DOSS_PUBLIC_ENTRY=${OSS_PUBLIC_ENTRY} \
- -DENABLE_TASK_PAYMENT=${ENABLE_TASK_PAYMENT} \
- -DAPI_PATH=${API_PATH} \
- -DAB_SECRET_KEY=${AB_SECRET_KEY} \
- -Dspring.profiles.active=${PROFILE} \
- -Dserver.port=${API_PORT} \
- -jar /app/${APP_JAR_NAME}.jar " ]
|