# IllusionCMS als Container – aus den fertigen Binaries in bin/ (kein Build
# aus dem Quellcode). Welche Version, steht in VERSION.

# Datenordner mit den richtigen Rechten vorbereiten (das Laufzeit-Image hat keine Shell)
FROM busybox:1.36 AS prep
RUN mkdir -p /data && chown 65532:65532 /data

# Minimal: nur das statische Binary, CA-Zertifikate und Zeitzonen
FROM gcr.io/distroless/static-debian12:nonroot
ARG TARGETARCH
COPY --chmod=0755 bin/illusioncms-linux-${TARGETARCH} /usr/local/bin/illusioncms
COPY --from=prep --chown=65532:65532 /data /data

ENV IC_ADDR=:8080 \
    IC_DATA=/data \
    TZ=Europe/Berlin
EXPOSE 8080
VOLUME /data
USER nonroot

HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
  CMD ["/usr/local/bin/illusioncms", "-healthcheck"]
ENTRYPOINT ["/usr/local/bin/illusioncms"]
