# Local candidate; no registry publication is implied. Package adapter derived # selectively from PR164 revision 4cc625e4d1aebe57fece3ef5bb8e70f40b372732. # The guarded entrypoint/settings reader are Archipelago's qualified snapshot # implementation, not the proposal's mutable-file validator or generic reader. FROM docker.io/library/eclipse-temurin:17-jre@sha256:e04fa72be13b257a59fdec6dc14af78c8f80f035d3c1ed4e03e45552a231d4c8 ARG QORTAL_VERSION=6.1.9 ARG QORTAL_SHA256=a5fbe763645a53995565c9cb93491e024384431ee29eee38a4146b6a13ed2e87 ARG QORTAL_LOGGING_SHA256=3aa4383ef01cdac91407e6c58fbb28b108bbc536e2d8ca37862c207d67167590 RUN set -eux; \ apt-get update; \ apt-get install -y --no-install-recommends curl ca-certificates nginx python3; \ rm -rf /var/lib/apt/lists/*; \ mkdir -p /usr/local/qortal /qortal; \ curl -fsSL -o /usr/local/qortal/qortal.jar \ "https://github.com/Qortal/qortal/releases/download/v${QORTAL_VERSION}/qortal.jar"; \ echo "${QORTAL_SHA256} /usr/local/qortal/qortal.jar" | sha256sum -c -; \ curl -fsSL -o /usr/local/qortal/log4j2.properties \ "https://raw.githubusercontent.com/Qortal/qortal/v${QORTAL_VERSION}/log4j2.properties"; \ echo "${QORTAL_LOGGING_SHA256} /usr/local/qortal/log4j2.properties" | sha256sum -c -; \ chown 1000:100 /qortal COPY ui/nginx.conf /etc/qortal-ui/nginx.conf COPY ui/index.html ui/qortal.png /usr/share/qortal-ui/ COPY start.sh /usr/local/bin/qortal-start COPY health.sh /usr/local/bin/qortal-health COPY check-settings.py /usr/local/bin/qortal-check-settings COPY prepare-runtime-jar.py /usr/local/bin/qortal-prepare-runtime-jar.py COPY empty-cache-overlay-contract.json /usr/local/qortal/empty-cache-overlay-contract.json RUN mkdir -p /usr/local/qortal/empty-cache && \ chmod 0755 /usr/local/bin/qortal-start /usr/local/bin/qortal-health \ /usr/local/bin/qortal-prepare-runtime-jar.py USER 1000:100 WORKDIR /qortal EXPOSE 12390 12391 12392 12394 12380 ENTRYPOINT ["/usr/local/bin/qortal-start"]