kvm/Dockerfile.build

33 lines
997 B
Docker

# syntax=docker/dockerfile:1
FROM golang:1.24.4-bookworm
ENV GOTOOLCHAIN=local
ENV GOPATH /go
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
# Install build dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
device-tree-compiler \
gperf g++-multilib gcc-multilib \
libnl-3-dev libdbus-1-dev libelf-dev libmpc-dev dwarves \
bc openssl flex bison libssl-dev python3 python-is-python3 texinfo kmod cmake \
wget zstd \
&& rm -rf /var/lib/apt/lists/*
# Install buildkit
ENV BUILDKIT_VERSION="v0.2.2"
RUN wget https://github.com/jetkvm/rv1106-system/releases/download/${BUILDKIT_VERSION}/buildkit.tar.zst && \
mkdir -p /opt/jetkvm-native-buildkit && \
tar --use-compress-program="unzstd --long=31" -xvf buildkit.tar.zst -C /opt/jetkvm-native-buildkit && \
rm buildkit.tar.zst
# Create build directory
RUN mkdir -p /build/
# Copy go.mod and go.sum
COPY go.mod go.sum /build/
WORKDIR /build
RUN go mod download && go mod verify