Skip to content

Commit 33f3388

Browse files
Merge pull request #4 from pgier/multi-stage-docker-build
update Dockerfile to use multi-stage build
2 parents b7c6d38 + c5d59ac commit 33f3388

File tree

1 file changed

+8
-13
lines changed

1 file changed

+8
-13
lines changed

Dockerfile

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,16 @@
1-
FROM openshift/origin-base
2-
3-
ENV GOPATH /go
4-
RUN mkdir $GOPATH
5-
6-
COPY . $GOPATH/src/k8s.io/kube-state-metrics
7-
8-
RUN yum install -y golang make git && \
9-
cd $GOPATH/src/k8s.io/kube-state-metrics && cat Makefile && \
10-
make build && cp $GOPATH/src/k8s.io/kube-state-metrics/kube-state-metrics /usr/bin/ && \
11-
yum autoremove -y golang make git && yum clean all
1+
FROM registry.svc.ci.openshift.org/openshift/release:golang-1.10 AS builder
2+
WORKDIR /go/src/k8s.io/kube-state-metrics
3+
COPY . .
4+
RUN make build
125

6+
FROM registry.svc.ci.openshift.org/openshift/origin-v4.0:base
137
LABEL io.k8s.display-name="kube-state-metrics" \
148
io.k8s.description="This is a component that exposes metrics about Kubernetes objects." \
159
io.openshift.tags="kubernetes" \
1610
maintainer="Frederic Branczyk <[email protected]>"
1711

18-
# doesn't require a root user.
19-
USER 1001
12+
ARG FROM_DIRECTORY=/go/src/k8s.io/kube-state-metrics
13+
COPY --from=builder ${FROM_DIRECTORY}/kube-state-metrics /usr/bin/kube-state-metrics
2014

15+
USER nobody
2116
ENTRYPOINT ["/usr/bin/kube-state-metrics"]

0 commit comments

Comments
 (0)