2026-02-20 10:58:57 -08:00
|
|
|
# based on https://github.com/scheme-containers/monorepo/blob/master/implementations/chicken/5/Dockerfile
|
|
|
|
|
FROM debian:trixie-slim AS build
|
|
|
|
|
RUN apt-get update && apt-get -y --no-install-recommends install \
|
|
|
|
|
build-essential \
|
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
WORKDIR /build
|
|
|
|
|
COPY checksum checksum
|
|
|
|
|
ADD https://code.call-cc.org/releases/5.4.0/chicken-5.4.0.tar.gz chicken.tar.gz
|
|
|
|
|
RUN sha256sum chicken.tar.gz && sha256sum -c checksum
|
|
|
|
|
RUN mkdir chicken && tar -C chicken --strip-components 1 -xf chicken.tar.gz
|
|
|
|
|
WORKDIR /build/chicken
|
|
|
|
|
RUN make
|
|
|
|
|
RUN make install
|
|
|
|
|
|
2026-02-21 08:39:32 -08:00
|
|
|
FROM debian:trixie-slim AS buildeggs
|
2026-02-20 10:58:57 -08:00
|
|
|
RUN apt-get update && apt-get -y --no-install-recommends install \
|
|
|
|
|
gcc libc-dev libpq-dev \
|
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
COPY --from=build /usr/local/ /usr/local/
|
|
|
|
|
|
|
|
|
|
COPY scss /var/scss
|
|
|
|
|
COPY html-widgets /var/html-widgets
|
|
|
|
|
COPY schematra-session /var/schematra-session
|
|
|
|
|
WORKDIR /var/scss
|
|
|
|
|
RUN chicken-install
|
|
|
|
|
WORKDIR /var/html-widgets
|
|
|
|
|
RUN chicken-install
|
|
|
|
|
WORKDIR /var/
|
|
|
|
|
|
|
|
|
|
RUN chicken-install srfi-1 srfi-13 srfi-18 srfi-158 srfi-194 \
|
|
|
|
|
sxml-transforms schematra \
|
|
|
|
|
uri-common http-client medea intarweb \
|
|
|
|
|
sql-null openssl postgresql crypto-tools
|
|
|
|
|
|
|
|
|
|
# Egg is currently broken should be able to move back to regular install after it is fixed
|
|
|
|
|
WORKDIR /var/schematra-session
|
|
|
|
|
RUN chicken-install
|
|
|
|
|
|
|
|
|
|
WORKDIR /var
|
|
|
|
|
RUN mkdir nassella
|
|
|
|
|
WORKDIR /var/nassella
|
|
|
|
|
COPY mocks.scm mocks.scm
|
|
|
|
|
COPY db.scm db.scm
|
|
|
|
|
COPY nassella.scm nassella.scm
|
|
|
|
|
COPY run.scm run.scm
|
2026-02-21 08:39:32 -08:00
|
|
|
|
|
|
|
|
RUN csc -O3 mocks.scm -J
|
|
|
|
|
RUN csc -O3 db.scm -J
|
|
|
|
|
RUN csc -O3 nassella.scm -J
|
|
|
|
|
RUN csc -O3 -o nassella-run run.scm
|
|
|
|
|
RUN chmod +x nassella-run
|
|
|
|
|
|
|
|
|
|
FROM debian:trixie-slim
|
|
|
|
|
RUN apt-get update && apt-get -y --no-install-recommends install \
|
|
|
|
|
libpq-dev \
|
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
COPY --from=buildeggs /usr/local/ /usr/local/
|
|
|
|
|
|
|
|
|
|
WORKDIR /var
|
|
|
|
|
COPY --from=buildeggs /var/nassella/mocks /var
|
|
|
|
|
COPY --from=buildeggs /var/nassella/db /var
|
|
|
|
|
COPY --from=buildeggs /var/nassella/nassella /var
|
|
|
|
|
COPY --from=buildeggs /var/nassella/nassella-run /var
|
|
|
|
|
|
2026-02-20 10:58:57 -08:00
|
|
|
COPY nassella-latest.tar nassella-latest.tar
|
|
|
|
|
COPY root-key root-key
|
2026-02-21 08:39:32 -08:00
|
|
|
COPY db-init.sql db-init.sql
|
2026-02-21 10:55:42 -08:00
|
|
|
COPY db-clean.sql db-clean.sql
|
2026-02-20 10:58:57 -08:00
|
|
|
|
2026-02-21 08:39:32 -08:00
|
|
|
# ENTRYPOINT ["ls"]
|
|
|
|
|
# CMD ["/usr/local/lib/chicken/11"]
|
|
|
|
|
ENTRYPOINT ["./nassella-run"]
|
2026-02-20 10:58:57 -08:00
|
|
|
CMD ["-:a50"]
|