Stirling-PDF/Dockerfile-ultra-lite

51 lines
1.5 KiB
Plaintext
Raw Normal View History

# use alpine
2024-02-10 11:29:17 +01:00
FROM alpine:3.19.1
2023-05-18 00:58:15 +02:00
2023-12-18 17:39:26 +01:00
ARG VERSION_TAG
2023-09-04 19:42:22 +02:00
# Set Environment Variables
2023-12-16 11:11:34 +01:00
ENV DOCKER_ENABLE_SECURITY=false \
2023-09-04 19:42:22 +02:00
HOME=/home/stirlingpdfuser \
2023-12-28 18:49:45 +01:00
VERSION_TAG=$VERSION_TAG \
JAVA_TOOL_OPTIONS="$JAVA_TOOL_OPTIONS -XX:MaxRAMPercentage=75" \
PUID=1000 \
PGID=1000 \
UMASK=022
2023-09-04 19:42:22 +02:00
# Copy necessary files
COPY scripts/download-security-jar.sh /scripts/download-security-jar.sh
COPY scripts/init-without-ocr.sh /scripts/init-without-ocr.sh
COPY pipeline /pipeline
COPY build/libs/*.jar app.jar
2023-09-04 19:42:22 +02:00
# Set up necessary directories and permissions
RUN mkdir /configs /logs /customFiles && \
chmod +x /scripts/*.sh && \
apk add --no-cache \
ca-certificates \
tzdata \
tini \
bash \
2023-12-31 17:14:55 +01:00
curl \
su-exec \
2024-01-31 20:59:22 +01:00
openjdk17-jre && \
echo "@testing https://dl-cdn.alpinelinux.org/alpine/edge/main" | tee -a /etc/apk/repositories && \
echo "@testing https://dl-cdn.alpinelinux.org/alpine/edge/community" | tee -a /etc/apk/repositories && \
echo "@testing https://dl-cdn.alpinelinux.org/alpine/edge/testing" | tee -a /etc/apk/repositories && \
# User permissions
addgroup -S stirlingpdfgroup && adduser -S stirlingpdfuser -G stirlingpdfgroup && \
chown -R stirlingpdfuser:stirlingpdfgroup $HOME /scripts /configs /customFiles /pipeline && \
chown stirlingpdfuser:stirlingpdfgroup /app.jar
2023-05-18 00:58:15 +02:00
# Set environment variables
2023-09-04 19:42:22 +02:00
ENV ENDPOINTS_GROUPS_TO_REMOVE=CLI
2023-12-16 11:11:34 +01:00
2024-02-10 11:29:17 +01:00
EXPOSE 8080
ENTRYPOINT ["tini", "--", "/scripts/init-without-ocr.sh"]
2023-05-18 00:58:15 +02:00
# Run the application
CMD ["java", "-Dfile.encoding=UTF-8", "-jar", "/app.jar"]