-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
36 lines (26 loc) · 1.04 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
FROM ubuntu:18.04
RUN \
apt-get update && \
apt-get install -y curl unzip libgit2-26 && \
rm -rf /var/lib/apt/lists/*
RUN mkdir -p /opt/ \
&& cd /opt \
&& curl get.pharo.org/64/70+vm | bash
RUN mv /opt/Pharo.image /opt/SnapDump.image
RUN mv /opt/Pharo.changes /opt/SnapDump.changes
COPY start.st /opt/
COPY source /opt/source
ARG CACHEBUST=1
RUN \
/opt/pharo /opt/SnapDump.image eval --save "Metacello new repository: 'filetree:///opt/source'; baseline: #SnapDump; load: #('server')" && \
/opt/pharo /opt/SnapDump.image eval --save "SnapDump prepareForDeployment" && \
/opt/pharo /opt/SnapDump.image eval --save "SDServer version: '$DOCKER_TAG'" && \
rm -rf /opt/pharo-local
RUN \
apt-get -y remove --purge unzip libgit2-26 && \
apt-get -y autoremove --purge && \
apt-get clean
WORKDIR /opt
CMD "/opt/pharo" "--mmap" "64m" "/opt/SnapDump.image" "--no-default-preferences" "st" "/opt/start.st"
EXPOSE 5555
HEALTHCHECK CMD curl --fail -H 'Connection: close' http://localhost:5555/health/sunit/SnapDumpHealth || exit 1