This repository has been archived by the owner on Oct 21, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
60 lines (50 loc) · 1.54 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# -*- docker-image-name: "rudolfochrist/debian-sbcl"; -*-
FROM debian:stable-slim
LABEL maintainer="Sebastian Christ"
LABEL email="[email protected]"
WORKDIR /root
# Build arguments
ARG SBCL_VERSION=1.4.2
ARG SBCL_SHA256_SUM=c0f3767616e6c5383e82682cb45488a861a6ae6c5acbb79e5022bc1e60a1b45b
ARG SBCL_INSTALL_DIR=sbcl-$SBCL_VERSION-x86-64-linux
ARG SBCL_TAR=$SBCL_INSTALL_DIR-binary.tar
ARG SBCL_BZIP=$SBCL_TAR.bz2
ARG QL_SHA256SUM=4a7a5c2aebe0716417047854267397e24a44d0cce096127411e9ce9ccfeb2c17
# Deps
RUN apt-get update &&\
apt-get install -y \
bzip2 \
git \
libssl-dev \
make \
wget \
&&\
rm -rf /var/lib/apt/lists/*
# Install SBCL
RUN wget http://prdownloads.sourceforge.net/sbcl/$SBCL_BZIP &&\
bzip2 -d $SBCL_BZIP &&\
echo "$SBCL_SHA256_SUM $SBCL_TAR" | sha256sum -c - &&\
tar xf $SBCL_TAR &&\
cd $SBCL_INSTALL_DIR &&\
sh install.sh &&\
cd &&\
rm -rf $SBCL_TAR $SBCL_INSTALL_DIR
# Install Quicklisp
RUN mkdir -p /usr/local/quicklisp &&\
wget https://beta.quicklisp.org/quicklisp.lisp &&\
echo "$QL_SHA256SUM quicklisp.lisp" | sha256sum -c - &&\
sbcl --load quicklisp.lisp \
--eval '(quicklisp-quickstart:install :path "/usr/local/lib/quicklisp")' &&\
rm quicklisp.lisp
# Copy files
COPY image /
COPY version .
# Environment
ENV XDG_CACHE_HOME=/var/cache
ENV CL_SOURCE_REGISTRY=/opt/common-lisp//
# Volumes
VOLUME /usr/local/lib/quicklisp
VOLUME /var/cache
VOLUME /opt/common-lisp
# Start Lisp
ENTRYPOINT ["/usr/local/bin/sbcl"]