cfg/Containerfile

55 lines
1.4 KiB
Docker

FROM registry.fedoraproject.org/fedora-minimal:39 AS build
RUN --mount=type=cache,target=/var/cache \
microdnf install -y \
--setopt install_weak_deps=0 \
gzip \
tar \
&& ARCH=$(uname -m) \
&& case "${ARCH}" in \
x86_64) ARCH=amd64 ;; \
aarch64) ARCH=arm64 ;; \
esac \
&& url="https://github.com/kcl-lang/lib/raw/v0.7.5/lib/linux-${ARCH}/" \
&& curl -fsSL "${url}/kclvm_cli" -o /usr/local/bin/kclvm_cli \
&& curl -fsSL "${url}/libkclvm_cli_cdylib.so" \
-o /usr/local/bin/libkclvm_cli_cdylib.so \
&& chmod +x /usr/local/bin/kclvm_cli \
&& url="https://github.com/kcl-lang/cli/releases/download/v0.7.2/kcl-v0.7.2-linux-${ARCH}.tar.gz" \
&& curl -fsSL "${url}" \
| tar -C /usr/local/bin -xz kcl \
&& :
FROM git.pyrocufflink.net/containerimages/tmpl
RUN --mount=type=cache,target=/var/cache \
--mount=type=bind,from=build,source=/,target=/build \
microdnf install -y \
--setopt install_weak_deps=0 \
age \
gcc \
git \
&& ln -snf /host/etc/passwd /etc/passwd \
&& ln -snf /host/etc/group /etc/group \
&& cp -a /build/usr/local/bin/. /usr/local/bin \
&& for cmd in \
systemctl \
systemd-sysusers \
; do ln -s nsenter.sh /usr/local/bin/${cmd}; done \
&& :
COPY nsenter.sh /usr/local/bin/nsenter.sh
COPY config.sh /
ENTRYPOINT []
CMD ["/config.sh"]
ENV KCL_GO_DISABLE_ARTIFACT=on
ENV KCL_PKG_PATH=/tmp
ENV KCL_CACHE_PATH=/tmp
LABEL license= \
vendor='Dustin C. Hatch' \