github.com/IBM-Blockchain/fabric-operator@v1.0.4/Dockerfile (about) 1 ARG GO_VER 2 3 ########## Build operator binary ########## 4 FROM registry.access.redhat.com/ubi8/go-toolset:$GO_VER as builder 5 6 COPY . /go/src/github.com/hyperledger-labs/fabric-operator 7 WORKDIR /go/src/github.com/hyperledger-labs/fabric-operator 8 9 # RUN GOOS=linux GOARCH=$(go env GOARCH) CGO_ENABLED=1 go build 10 RUN go build \ 11 -tags "pkcs11" \ 12 -gcflags all=-trimpath=${GOPATH} \ 13 -asmflags all=-trimpath=${GOPATH} \ 14 -o /tmp/build/_output/bin/ibp-operator 15 16 ########## Final Image ########## 17 FROM registry.access.redhat.com/ubi8/ubi-minimal 18 19 ENV OPERATOR=/usr/local/bin/ibp-operator 20 21 COPY --from=builder /tmp/build/_output/bin/ibp-operator ${OPERATOR} 22 COPY build/ /usr/local/bin 23 COPY definitions /definitions 24 COPY config/crd/bases /deploy/crds 25 COPY defaultconfig /defaultconfig 26 COPY docker-entrypoint.sh . 27 28 RUN microdnf update \ 29 && microdnf install -y \ 30 shadow-utils \ 31 iputils \ 32 && groupadd -g 7051 fabric-user \ 33 && useradd -u 7051 -g fabric-user -s /bin/bash fabric-user \ 34 && mkdir /licenses \ 35 && microdnf remove shadow-utils \ 36 && microdnf clean all \ 37 && chown -R fabric-user:fabric-user licenses \ 38 && /usr/local/bin/user_setup 39 40 USER fabric-user 41 ENTRYPOINT ["/docker-entrypoint.sh"] 42 CMD ["/usr/local/bin/entrypoint"]