forked from kubernetes-sigs/jobset
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDockerfile.ocp
40 lines (32 loc) · 1.68 KB
/
Dockerfile.ocp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
ARG BUILDER_IMAGE=brew.registry.redhat.io/rh-osbs/openshift-golang-builder:rhel_9_1.23
ARG BASE_IMAGE=registry.redhat.io/rhel9-4-els/rhel-minimal:9.4
# Build the manager binary
FROM ${BUILDER_IMAGE} AS builder
ARG TARGETOS
ARG TARGETARCH
ARG TARGETPLATFORM
ENV GOEXPERIMENT=strictfipsruntime
WORKDIR /workspace
COPY . .
RUN CGO_ENABLED=1 GOOS=${TARGETOS:-linux} GOARCH=${TARGETARCH} go build -tags strictfipsruntime -mod=vendor -a -o manager main.go
FROM --platform=$TARGETPLATFORM ${BASE_IMAGE}
WORKDIR /
COPY --from=builder /workspace/manager .
RUN mkdir /licenses
COPY --from=builder /workspace/LICENSE /licenses/.
USER 65532:65532
LABEL com.redhat.component="Job Set"
LABEL name="jobset"
LABEL release="0.8.0"
LABEL version="0.8.0"
LABEL url="https://github.com/openshift/kubernetes-sigs-jobset"
LABEL vendor="Red Hat, Inc."
LABEL description="JobSet is a Kubernetes-native API for managing a group of k8s Jobs as a unit. \
It aims to offer a unified API for deploying HPC (e.g., MPI) and AI/ML training workloads (PyTorch, Jax, Tensorflow etc.) on Kubernetes."
LABEL io.k8s.description="JobSet is a Kubernetes-native API for managing a group of k8s Jobs as a unit. \
It aims to offer a unified API for deploying HPC (e.g., MPI) and AI/ML training workloads (PyTorch, Jax, Tensorflow etc.) on Kubernetes."
LABEL summary="JobSet is a Kubernetes-native API for managing a group of k8s Jobs as a unit. \
It aims to offer a unified API for deploying HPC (e.g., MPI) and AI/ML training workloads (PyTorch, Jax, Tensorflow etc.) on Kubernetes."
LABEL io.k8s.display-name="Job Set"
LABEL io.openshift.tags="openshift,operator,jobset"
ENTRYPOINT ["/manager"]