-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathDockerfile.allinone
58 lines (45 loc) · 2.61 KB
/
Dockerfile.allinone
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
FROM registry.redhat.io/ubi9/nodejs-22:latest@sha256:f32c5fecf7bc92c6d236becd4e38a2a35a8c6cb2837c8a79b24fa1e0d5807c67 as builder-ui
WORKDIR /opt/app-root/src
USER root
COPY patches patches
COPY jaeger-ui jaeger-ui
# this directory is checked by ecosystem-cert-preflight-checks task in Konflux
COPY jaeger-ui/LICENSE /licenses/
WORKDIR /opt/app-root/src/jaeger-ui
# add deprecation notice to Jaeger UI
RUN dnf install -y patch
RUN patch -p1 < /opt/app-root/src/patches/deprecation_notice.patch
RUN npm ci --ignore-scripts
RUN npm run build
FROM brew.registry.redhat.io/rh-osbs/openshift-golang-builder:rhel_8_golang_1.22@sha256:414352c89e06f25f79b4927328504edcdbfe676cd9596b44afff2eb4117c17e0 as builder
WORKDIR /opt/app-root/src
USER root
COPY .git .git
COPY jaeger jaeger
# this directory is checked by ecosystem-cert-preflight-checks task in Konflux
COPY jaeger/LICENSE /licenses/
WORKDIR /opt/app-root/src/jaeger
COPY --from=builder-ui /opt/app-root/src/jaeger-ui /opt/app-root/src/jaeger-ui
RUN rm -rf ./cmd/query/app/ui/actual && mkdir ./cmd/query/app/ui/actual && cp -r /opt/app-root/src/jaeger-ui/packages/jaeger-ui/build/* ./cmd/query/app/ui/actual/ && find ./cmd/query/app/ui/actual -type f | xargs gzip && \
exportOrFail() { echo $1; if [[ $1 == *= ]]; then echo "Error: empty variable assignment"; exit 1; else export "$1"; fi } && \
exportOrFail VERSION_PKG="github.com/jaegertracing/jaeger/pkg/version" && \
exportOrFail VERSION_DATE=`date -u +'%Y-%m-%dT%H:%M:%SZ'` && \
exportOrFail GIT_LATEST_TAG=`git describe --abbrev=0 --tags` && \
exportOrFail GIT_COMMIT_SHA=`git rev-parse HEAD` && \
go build -C ./cmd/all-in-one -mod=mod -tags ui -o ./jaeger -trimpath -ldflags "-s -w -X ${VERSION_PKG}.commitSHA=${GIT_COMMIT_SHA} -X ${VERSION_PKG}.latestVersion=${GIT_LATEST_TAG} -X ${VERSION_PKG}.date=${VERSION_DATE}"
FROM registry.redhat.io/ubi8/ubi-minimal:latest@sha256:cf095e5668919ba1b4ace3888107684ad9d587b1830d3eb56973e6a54f456e67
WORKDIR /
RUN mkdir /licenses
COPY jaeger/LICENSE /licenses/.
COPY --from=builder /opt/app-root/src/jaeger/cmd/all-in-one/jaeger /usr/bin/jaeger
ARG USER_UID=1001
USER ${USER_UID}
ENTRYPOINT ["/usr/bin/jaeger"]
LABEL com.redhat.component="jaeger-all-in-one-container" \
name="rhosdt/jaeger-all-in-one-rhel8" \
summary="Jaeger all-in-one" \
description="All-in-one for the distributed tracing system" \
io.k8s.description="All-in-one for the distributed tracing system." \
io.openshift.expose-services="16686:uihttp,14267:tchannel,14268:http,14250:grpc,4317:grpc,4318:http" \
io.openshift.tags="tracing" \
io.k8s.display-name="Jaeger all-in-one"