Stirling-PDF/Dockerfile.ultra-lite

57 lines
2.0 KiB
Docker
Raw Normal View History

# use alpine
[Snyk] Security upgrade alpine from 3.20.3 to 3.21.2 (#2669) ![snyk-top-banner](https://redirect.github.com/andygongea/OWASP-Benchmark/assets/818805/c518c423-16fe-447e-b67f-ad5a49b5d123) ### Snyk has created this PR to fix 1 vulnerabilities in the dockerfile dependencies of this project. Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image. #### Snyk changed the following file(s): - `Dockerfile` We recommend upgrading to `alpine:3.21.2`, as this image has only **0** known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected. #### Vulnerabilities that will be fixed with an upgrade: | | Issue | Score | :-------------------------:|:-------------------------|:------------------------- ![low severity](https://res.cloudinary.com/snyk/image/upload/w_20,h_20/v1561977819/icon/l.png 'low severity') | CVE-2024-9143 <br/>[SNYK-ALPINE320-OPENSSL-8235201](https://snyk.io/vuln/SNYK-ALPINE320-OPENSSL-8235201) | &nbsp;&nbsp;**54**&nbsp;&nbsp; ![low severity](https://res.cloudinary.com/snyk/image/upload/w_20,h_20/v1561977819/icon/l.png 'low severity') | CVE-2024-9143 <br/>[SNYK-ALPINE320-OPENSSL-8235201](https://snyk.io/vuln/SNYK-ALPINE320-OPENSSL-8235201) | &nbsp;&nbsp;**54**&nbsp;&nbsp; --- > [!IMPORTANT] > > - Check the changes in this PR to ensure they won't cause issues with your project. > - Max score is 1000. Note that the real score may have changed since the PR was raised. > - This PR was automatically created by Snyk using the credentials of a real user. --- **Note:** _You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs._ For more information: <img src="https://api.segment.io/v1/pixel/track?data=eyJ3cml0ZUtleSI6InJyWmxZcEdHY2RyTHZsb0lYd0dUcVg4WkFRTnNCOUEwIiwiYW5vbnltb3VzSWQiOiJhYmYwMzliMi05OTRlLTRkMmMtYWZjOS04YzIwNWYxOWUwNTQiLCJldmVudCI6IlBSIHZpZXdlZCIsInByb3BlcnRpZXMiOnsicHJJZCI6ImFiZjAzOWIyLTk5NGUtNGQyYy1hZmM5LThjMjA1ZjE5ZTA1NCJ9fQ==" width="0" height="0"/> 🧐 [View latest project report](https://app.snyk.io/org/frooodle/project/6c268b92-2569-4b08-8058-1f8f5d4acd0d?utm_source&#x3D;github&amp;utm_medium&#x3D;referral&amp;page&#x3D;fix-pr) 📜 [Customise PR templates](https://docs.snyk.io/scan-using-snyk/pull-requests/snyk-fix-pull-or-merge-requests/customize-pr-templates?utm_source=github&utm_content=fix-pr-template) 🛠 [Adjust project settings](https://app.snyk.io/org/frooodle/project/6c268b92-2569-4b08-8058-1f8f5d4acd0d?utm_source&#x3D;github&amp;utm_medium&#x3D;referral&amp;page&#x3D;fix-pr/settings) 📚 [Read about Snyk's upgrade logic](https://docs.snyk.io/scan-with-snyk/snyk-open-source/manage-vulnerabilities/upgrade-package-versions-to-fix-vulnerabilities?utm_source=github&utm_content=fix-pr-template) --- **Learn how to fix vulnerabilities with free interactive lessons:** 🦉 [Learn about vulnerability in an interactive lesson of Snyk Learn.](https://learn.snyk.io/?loc&#x3D;fix-pr) [//]: # 'snyk:metadata:{"customTemplate":{"variablesUsed":[],"fieldsUsed":[]},"dependencies":[{"name":"alpine","from":"3.20.3","to":"3.21.2"}],"env":"prod","issuesToFix":["SNYK-ALPINE320-OPENSSL-8235201","SNYK-ALPINE320-OPENSSL-8235201"],"prId":"abf039b2-994e-4d2c-afc9-8c205f19e054","prPublicId":"abf039b2-994e-4d2c-afc9-8c205f19e054","packageManager":"dockerfile","priorityScoreList":[54],"projectPublicId":"6c268b92-2569-4b08-8058-1f8f5d4acd0d","projectUrl":"https://app.snyk.io/org/frooodle/project/6c268b92-2569-4b08-8058-1f8f5d4acd0d?utm_source=github&utm_medium=referral&page=fix-pr","prType":"fix","templateFieldSources":{"branchName":"default","commitMessage":"default","description":"default","title":"default"},"templateVariants":["updated-fix-title","priorityScore"],"type":"auto","upgrade":["SNYK-ALPINE320-OPENSSL-8235201","SNYK-ALPINE320-OPENSSL-8235201"],"vulns":["SNYK-ALPINE320-OPENSSL-8235201"],"patch":[],"isBreakingChange":false,"remediationStrategy":"vuln"}' --------- Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2025-01-12 16:53:10 +01:00
FROM alpine:3.21.2@sha256:56fa17d2a7e7f168a043a2712e63aed1f8543aeafdcee47c58dcffe38ed51099
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 \
Test cleanup, JVM GC and api (#2787) # Description of Changes Please provide a summary of the changes, including: - What was changed - Why the change was made - Any challenges encountered Closes #(issue_number) --- ## Checklist ### General - [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ ] I have read the [Stirling-PDF Developer Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md) (if applicable) - [ ] I have read the [How to add new languages to Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md) (if applicable) - [ ] I have performed a self-review of my own code - [ ] My changes generate no new warnings ### Documentation - [ ] I have updated relevant docs on [Stirling-PDF's doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) (if functionality has heavily changed) - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) ### UI Changes (if applicable) - [ ] Screenshots or videos demonstrating the UI changes are attached (e.g., as comments or direct attachments in the PR) ### Testing (if applicable) - [ ] I have tested my changes locally. Refer to the [Testing Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/DeveloperGuide.md#6-testing) for more details. --------- Co-authored-by: a <a>
2025-01-26 14:10:16 +01:00
JAVA_TOOL_OPTIONS="-XX:+UnlockExperimentalVMOptions \
-XX:MaxRAMPercentage=75 \
-XX:InitiatingHeapOccupancyPercent=20 \
-XX:+G1PeriodicGCInvokesConcurrent \
-XX:G1PeriodicGCInterval=10000 \
-XX:+UseStringDeduplication \
-XX:G1PeriodicGCSystemLoadThreshold=70" \
2024-05-23 00:03:00 +02:00
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 scripts/installFonts.sh /scripts/installFonts.sh
COPY pipeline /pipeline
COPY build/libs/*.jar app.jar
2023-09-04 19:42:22 +02:00
# Set up necessary directories and permissions
2024-05-23 00:03:00 +02:00
RUN 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 && \
apk upgrade --no-cache -a && \
apk add --no-cache \
ca-certificates \
tzdata \
tini \
bash \
2023-12-31 17:14:55 +01:00
curl \
2024-03-09 15:03:46 +01:00
shadow \
2024-05-23 00:03:00 +02:00
su-exec \
2024-05-17 20:18:57 +02:00
openjdk21-jre && \
# User permissions
mkdir -p /configs /logs /customFiles /usr/share/fonts/opentype/noto && \
2024-05-23 00:03:00 +02:00
chmod +x /scripts/*.sh && \
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-05-23 00:03:00 +02:00
EXPOSE 8080/tcp
2023-05-18 00:58:15 +02:00
# Run the application
2024-05-23 00:03:00 +02:00
ENTRYPOINT ["tini", "--", "/scripts/init-without-ocr.sh"]
CMD ["java", "-Dfile.encoding=UTF-8", "-jar", "/app.jar"]