forked from google/trillian
-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathDockerfile.logsigner.rh
32 lines (25 loc) · 1.4 KB
/
Dockerfile.logsigner.rh
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
FROM registry.access.redhat.com/ubi9/go-toolset@sha256:d73c4151518c73332717a52f5d22c670bf2f88e04a841e507aef0227b3100225 AS builder
ENV APP_ROOT=/opt/app-root
ENV GOPATH=$APP_ROOT
ENV CGO_ENABLED=false
ENV -buildvcs=false
WORKDIR $APP_ROOT/src/
ADD go.mod go.sum $APP_ROOT/src/
RUN go mod download
RUN git config --global --add safe.directory /opt/app-root/src
# Add source code
ADD ./ $APP_ROOT/src/
RUN go build -v ./cmd/trillian_log_signer
# Multi-Stage production build
FROM registry.access.redhat.com/ubi9/ubi-minimal@sha256:f5d2c6a1e0c86e4234ea601552dbabb4ced0e013a1efcbfb439f1f6a7a9275b0 AS deploy
# Retrieve the binary from the previous stage
COPY --from=builder /opt/app-root/src/trillian_log_signer /
LABEL description="Trillian is an implementation of the concepts described in the Verifiable Data Structures white paper, which in turn is an extension and generalisation of the ideas which underpin Certificate Transparency."
LABEL io.k8s.description="Trillian is an implementation of the concepts described in the Verifiable Data Structures white paper."
LABEL io.k8s.display-name="trillian_log_signer"
LABEL io.openshift.tags="trillian-logsigner trusted-signer"
LABEL summary="Provides the trillian logsigner binary for running trillian logsigner"
LABEL com.redhat.component="trillian_log_signer"
LABEL name="trillian_log_signer"
# Set the binary as the entrypoint of the container
ENTRYPOINT ["/trillian_log_signer"]