Skip to content

Commit 7189c5a

Browse files
homersimpsonsBNAndrasglennj
authored
⚡ shrink test-runner docker image (#41)
Co-authored-by: BNAndras <[email protected]> Co-authored-by: Glenn Jackman <[email protected]>
1 parent e5d6538 commit 7189c5a

File tree

1 file changed

+16
-17
lines changed

1 file changed

+16
-17
lines changed

Dockerfile

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
1-
FROM nimlang/nim:2.2.4-ubuntu-slim
1+
FROM ubuntu:24.04
22

3-
ENV DEBIAN_FRONTEND=noninteractive
4-
5-
RUN apt-get update && \
6-
apt-get install -y jq build-essential git libgtk-3-dev libwebkit2gtk-4.0-dev libmpfr-dev && \
7-
apt-get purge --auto-remove && \
8-
apt-get clean && \
9-
rm -rf /var/lib/apt/lists/*
10-
11-
RUN git clone https://github.com/arturo-lang/arturo.git
12-
13-
RUN cd arturo && ./build.nims build --install --log && \
14-
cd .. && rm -rf arturo
15-
16-
ENV PATH="/root/.arturo/bin:${PATH}"
17-
18-
RUN arturo --package install unitt 2.0.1
3+
RUN apt-get update \
4+
# Install required build and runtime dependencies, cannot use `--no-install-recommends`
5+
&& apt-get install -y jq wget unzip libmpfr6 libwebkit2gtk-4.1-0 libpcre3 \
6+
# Fetch pre-built nightly release and install it
7+
&& wget --quiet --output-document arturo.zip https://github.com/arturo-lang/nightly/releases/download/2025-07-05/arturo-nightly.2025-07-04-amd64-linux-full.zip \
8+
&& unzip -d /usr/local/bin arturo.zip arturo \
9+
&& rm arturo.zip \
10+
# Install unitt test framework
11+
&& arturo --package install unitt 2.0.1 \
12+
# Clean up apt-get and build dependencies: python3 was installed but not necessary for runtime
13+
&& apt-get purge --auto-remove -y wget unzip python3 \
14+
&& apt-get clean \
15+
&& rm -rf /var/lib/apt/lists/* \
16+
# Remove 30MB of icons that are not necessary
17+
&& rm -rf /usr/share/icons
1918

2019
WORKDIR /opt/test-runner
2120
COPY bin/run.sh bin/run.sh

0 commit comments

Comments
 (0)