tetragon
/
Dockerfile.rthooks
33 строки · 1.8 Кб
1# SPDX-License-Identifier: Apache-2.0
2
3ARG GOLANG_IMAGE=docker.io/library/golang:1.22.5@sha256:fcae9e0e7313c6467a7c6632ebb5e5fab99bd39bd5eb6ee34a211353e647827a
4ARG BASE_IMAGE=docker.io/library/alpine:3.20.1@sha256:b89d9c93e9ed3597455c90a0b88a8bbb5cb7188438f70953fede212a0c4394e0
5
6# BUILDPLATFORM is an automatic platform ARG enabled by Docker BuildKit.
7# Represents the plataform where the build is happening, do not mix with
8# TARGETARCH
9FROM --platform=${BUILDPLATFORM} ${GOLANG_IMAGE} as builder
10# TARGETOS is an automatic platform ARG enabled by Docker BuildKit.
11ARG TARGETOS
12# TARGETARCH is an automatic platform ARG enabled by Docker BuildKit.
13ARG TARGETARCH
14WORKDIR /go/src/github.com/cilium/tetragon
15RUN --mount=type=bind,readwrite,target=/go/src/github.com/cilium/tetragon \
16--mount=target=/root/.cache,type=cache \
17--mount=target=/go/pkg/mod,type=cache \
18make GOARCH=${TARGETARCH} tetragon-oci-hook tetragon-oci-hook-setup tetragon-nri-hook \
19&& mkdir -p /out/${TARGETOS}/${TARGETARCH}/usr/bin \
20&& mv ./contrib/tetragon-rthooks/tetragon-oci-hook /out/${TARGETOS}/${TARGETARCH}/usr/bin \
21&& mv ./contrib/tetragon-rthooks/tetragon-oci-hook-setup /out/${TARGETOS}/${TARGETARCH}/usr/bin \
22&& mv ./contrib/tetragon-rthooks/tetragon-nri-hook /out/${TARGETOS}/${TARGETARCH}/usr/bin
23
24FROM ${BASE_IMAGE} as image
25# TARGETOS is an automatic platform ARG enabled by Docker BuildKit.
26ARG TARGETOS
27# TARGETARCH is an automatic platform ARG enabled by Docker BuildKit.
28ARG TARGETARCH
29LABEL maintainer="maintainer@cilium.io"
30COPY --from=builder /out/${TARGETOS}/${TARGETARCH}/usr/bin/tetragon-oci-hook /usr/bin/
31COPY --from=builder /out/${TARGETOS}/${TARGETARCH}/usr/bin/tetragon-oci-hook-setup /usr/bin/
32COPY --from=builder /out/${TARGETOS}/${TARGETARCH}/usr/bin/tetragon-nri-hook /usr/bin/
33WORKDIR /
34