Working dockerfile.
This commit is contained in:
54
src/Dockerfile
Normal file
54
src/Dockerfile
Normal file
@@ -0,0 +1,54 @@
|
||||
# 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
|
||||
|
||||
FROM debian:trixie-slim
|
||||
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
|
||||
COPY docker-ssh-keygen.sh docker-ssh-keygen.sh
|
||||
COPY nassella-latest.tar nassella-latest.tar
|
||||
COPY root-key root-key
|
||||
|
||||
RUN csc -O3 run.scm
|
||||
RUN chmod +x run
|
||||
|
||||
ENTRYPOINT ["./run"]
|
||||
CMD ["-:a50"]
|
||||
1
src/checksum
Normal file
1
src/checksum
Normal file
@@ -0,0 +1 @@
|
||||
3c5d4aa61c1167bf6d9bf9eaf891da7630ba9f5f3c15bf09515a7039bfcdec5f chicken.tar.gz
|
||||
@@ -20,7 +20,7 @@
|
||||
html-widgets
|
||||
sxml-transforms
|
||||
schematra
|
||||
schematra-body-parser
|
||||
schematra.body-parser
|
||||
schematra-session
|
||||
uri-common
|
||||
http-client
|
||||
|
||||
4
src/run.scm
Normal file
4
src/run.scm
Normal file
@@ -0,0 +1,4 @@
|
||||
(load "nassella.scm")
|
||||
(import spiffy schematra)
|
||||
|
||||
(with-schematra-app app (lambda () (start-server)))
|
||||
Reference in New Issue
Block a user