Closed jianzhangbjz closed 2 years ago
/assign @jianzhangbjz
mac:~ jianzhang$ docker version
Client:
Cloud integration: v1.0.22
Version: 20.10.13
API version: 1.41
Go version: go1.16.15
Git commit: a224086
Built: Thu Mar 10 14:08:44 2022
OS/Arch: darwin/amd64
Context: default
Experimental: true
Server: Docker Desktop 4.6.1 (76265)
Engine:
Version: 20.10.13
API version: 1.41 (minimum version 1.12)
Go version: go1.16.15
Git commit: 906f57f
Built: Thu Mar 10 14:06:05 2022
OS/Arch: linux/amd64
Experimental: true
containerd:
Version: 1.5.10
GitCommit: 2a1d4dbdb2a1030dc5b01e96fb110a9d9f150ecc
runc:
Version: 1.0.3
GitCommit: v1.0.3-0-gf46b6ba
docker-init:
Version: 0.19.0
GitCommit: de40ad0
@jianzhangbjz worked for me
docker version
Client: Docker Engine - Community
Version: 20.10.14
API version: 1.41
Go version: go1.16.15
Git commit: a224086
Built: Thu Mar 24 01:48:32 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.14
API version: 1.41 (minimum version 1.12)
Go version: go1.16.15
Git commit: 87a90dc
Built: Thu Mar 24 01:46:20 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.5.11
GitCommit: 3df54a852345ae127d1fa3092b95168e4a88e2f8
runc:
Version: 1.0.3
GitCommit: v1.0.3-0-gf46b6ba
docker-init:
Version: 0.19.0
GitCommit: de40ad0
make build
mkdir -p "build/_output/bin"
export GO111MODULE=on && export GOPROXY=https://goproxy.io && go build -mod=vendor -o "build/_output/bin/learn-operator" "./cmd/manager/main.go"
mkdir -p "/tmp" && cp "build/_output/bin/learn-operator" "/tmp/learn-operator" && cp -r "build/bin" "/tmp/bin"
docker build -f build/Dockerfile --no-cache --tag quay.io/olmqe/learn-operator:v1 .
Sending build context to Docker daemon 65.33MB
Step 1/7 : FROM registry.access.redhat.com/ubi8/ubi-minimal:latest
---> a0c247bdbd39
Step 2/7 : ENV OPERATOR=/usr/local/bin/learn-operator USER_UID=1001 USER_NAME=learn-operator
---> Running in de7bdbc18318
Removing intermediate container de7bdbc18318
---> 535be2436ec2
Step 3/7 : COPY build/_output/bin/learn-operator ${OPERATOR}
---> ed890c8a8b4a
Step 4/7 : COPY build/bin /usr/local/bin
---> 548cf03b14a4
Step 5/7 : RUN /usr/local/bin/user_setup
---> Running in 46003432554f
+ mkdir -p /root
+ chown 1001:0 /root
+ chmod ug+rwx /root
+ chmod g+rw /etc/passwd
+ rm /usr/local/bin/user_setup
Removing intermediate container 46003432554f
---> 68ee2368d611
Step 6/7 : ENTRYPOINT ["/usr/local/bin/entrypoint"]
---> Running in 8c7f1e4acc4f
Removing intermediate container 8c7f1e4acc4f
---> e62a18e23d0e
Step 7/7 : USER ${USER_UID}
---> Running in c25e9468173e
Removing intermediate container c25e9468173e
---> 29400a287fb7
Successfully built 29400a287fb7
Successfully tagged quay.io/olmqe/learn-operator:v1
Hi @bandrade, thanks! But, I didn't use that build/Dockerfile
file, I used a new Dockerfile
described at the PR, as follows,
mac:learn-operator jianzhang$ cat Dockerfile
ARG LAST_STAGE_REPO=quay.io/openshifttest
ARG LAST_STAGE_BASE=base-alpine:multiarch
MAINTAINER jiazha@redhat.com
FROM golang:1.17 as build
COPY . /app
WORKDIR /app
RUN go build -mod=vendor -o "/app/build/bin/learn-operator" "/app/cmd/manager/main.go"
FROM ${LAST_STAGE_REPO}/${LAST_STAGE_BASE}
ENV OPERATOR=/usr/local/bin/learn-operator \
USER_UID=1001 \
USER_NAME=learn-operator
COPY --from=build /app/build/bin /usr/local/bin
RUN /usr/local/bin/user_setup
RUN /usr/local/bin/learn-operator --help
ENTRYPOINT ["/usr/local/bin/entrypoint"]
USER ${USER_UID}
Addressed it by replacing the base image quay.io/openshifttest/base-alpine:multiarch
with registry.access.redhat.com/ubi8/ubi-minimal:latest
.
/close
@jianzhangbjz: Closing this issue.
I create a
Dockerfile
, like thisBut, it failed, errors: