chore: docker构建脚本优化,解耦jar包构建
This commit is contained in:
27
Dockerfile
27
Dockerfile
@@ -1,27 +1,22 @@
|
|||||||
FROM eclipse-temurin:17-jre
|
FROM eclipse-temurin:17-jre
|
||||||
|
|
||||||
LABEL maintainer="Cennac <cennac@163.com>"
|
|
||||||
|
|
||||||
ARG VERSION=2.0.4
|
|
||||||
ARG SERVICE_PORT=8080
|
|
||||||
|
|
||||||
ENV VERSION=${VERSION}
|
|
||||||
ENV SERVICE_PORT=${SERVICE_PORT}
|
|
||||||
ENV LANG=C.UTF-8
|
ENV LANG=C.UTF-8
|
||||||
ENV LC_ALL=C.UTF-8
|
ENV LC_ALL=C.UTF-8
|
||||||
ENV JAVA_OPTS=""
|
|
||||||
ENV TZ=Asia/Shanghai
|
ENV TZ=Asia/Shanghai
|
||||||
|
ENV JAVA_OPTS=""
|
||||||
|
ENV EASYFLOW_JAR_PATH=/app/easyflow.jar
|
||||||
|
ENV EASYFLOW_CONFIG_PATH=file:/app/application.yml
|
||||||
|
ENV EASYFLOW_LOG_FILE=/app/logs/app.log
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN useradd --system --create-home easyflow && \
|
||||||
apt-get install -y --no-install-recommends fonts-dejavu-core fontconfig && \
|
mkdir -p /app/logs && \
|
||||||
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && \
|
chown -R easyflow:easyflow /app
|
||||||
rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
COPY easyflow/easyflow-starter/easyflow-starter-all/target/easyflow-starter-all-*.jar /app/app.jar
|
USER easyflow
|
||||||
|
|
||||||
VOLUME /tmp
|
VOLUME ["/app/logs"]
|
||||||
EXPOSE ${SERVICE_PORT}
|
EXPOSE 8111
|
||||||
|
|
||||||
ENTRYPOINT ["sh", "-c", "java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app/app.jar"]
|
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}\""]
|
||||||
|
|||||||
Reference in New Issue
Block a user