woodpecker/docker/Dockerfile.agent.multiarch

20 lines
546 B
Docker

FROM --platform=$BUILDPLATFORM golang:1.18 AS build
WORKDIR /src
COPY . .
ARG TARGETOS TARGETARCH
RUN --mount=type=cache,target=/root/.cache/go-build \
--mount=type=cache,target=/go/pkg \
make build-agent
FROM scratch
ENV GODEBUG=netdns=go
EXPOSE 3000
# copy certs from golang:1.18 image
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
# copy agent binary
COPY --from=build /src/dist/woodpecker-agent /bin/
HEALTHCHECK CMD ["/bin/woodpecker-agent", "ping"]
ENTRYPOINT ["/bin/woodpecker-agent"]