main
Dockerfile
Chance Zibolski
·
2026-08-05
1FROM debian:12
2
3RUN apt-get update && apt-get install -y curl git bats coreutils && rm -rf /var/lib/apt/lists/*
4
5ARG ZIG_VERSION=0.16.0
6# `uname -m` already reports the names zig uses in its tarballs (x86_64,
7# aarch64), so it needs no mapping.
8RUN ARCH="$(uname -m)" && \
9 case "$ARCH" in \
10 x86_64|aarch64) ;; \
11 *) echo "unsupported arch: $ARCH" >&2; exit 1 ;; \
12 esac && \
13 curl -L -o /tmp/zig.tar.xz https://ziglang.org/download/${ZIG_VERSION}/zig-${ARCH}-linux-${ZIG_VERSION}.tar.xz && \
14 cd /tmp && \
15 tar -xf zig.tar.xz && \
16 mv zig-${ARCH}-linux-${ZIG_VERSION} /usr/local/zig && \
17 ln -s /usr/local/zig/zig /usr/local/bin/zig && \
18 rm -f /tmp/zig.tar.xz
19
20ENV PATH=/usr/local/zig:$PATH
21
22WORKDIR /app
23
24CMD ["zig"]