fix: 修复部署镜像与生产环境配置
- 固定 easyflow-backend 运行镜像为 linux/amd64 并接入新的容器入口脚本 - 支持外挂 jar 的运行目录权限修正、日志管理与热更新监听 - 调整 admin 生产环境基础路径与接口前缀用于部署
This commit is contained in:
16
Dockerfile
16
Dockerfile
@@ -1,25 +1,27 @@
|
||||
FROM eclipse-temurin:17-jre
|
||||
FROM --platform=linux/amd64 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/eclipse-temurin:17-jre
|
||||
|
||||
ENV LANG=C.UTF-8
|
||||
ENV LC_ALL=C.UTF-8
|
||||
ENV TZ=Asia/Shanghai
|
||||
ENV JAVA_OPTS=""
|
||||
ENV EASYFLOW_JAR_PATH=/app/easyflow.jar
|
||||
ENV EASYFLOW_JAR_PATH=/app/artifacts/easyflow.jar
|
||||
ENV EASYFLOW_CONFIG_PATH=file:/app/application.yml
|
||||
ENV EASYFLOW_LOG_FILE=/app/logs/app.log
|
||||
ENV EASYFLOW_JAR_RESTART_GRACE_SECONDS=30
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN useradd --system --create-home easyflow && \
|
||||
apt-get update && \
|
||||
apt-get install -y --no-install-recommends python3 && \
|
||||
apt-get install -y --no-install-recommends python3 inotify-tools tini && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
mkdir -p /app/logs && \
|
||||
mkdir -p /app/logs /app/artifacts /app/data && \
|
||||
chown -R easyflow:easyflow /app
|
||||
|
||||
USER easyflow
|
||||
COPY docker-entrypoint.sh /usr/local/bin/easyflow-entrypoint.sh
|
||||
RUN chmod 755 /usr/local/bin/easyflow-entrypoint.sh
|
||||
|
||||
VOLUME ["/app/logs"]
|
||||
VOLUME ["/app/logs", "/app/data"]
|
||||
EXPOSE 8111
|
||||
|
||||
ENTRYPOINT ["sh", "-c", "if [ ! -f \"${EASYFLOW_JAR_PATH}\" ]; then echo \"ERROR: easyflow jar not found: ${EASYFLOW_JAR_PATH}\"; exit 1; fi; java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar \"${EASYFLOW_JAR_PATH}\" --spring.config.location=\"${EASYFLOW_CONFIG_PATH}\" --logging.file.name=\"${EASYFLOW_LOG_FILE}\""]
|
||||
ENTRYPOINT ["/usr/bin/tini", "--", "/usr/local/bin/easyflow-entrypoint.sh"]
|
||||
|
||||
Reference in New Issue
Block a user