docker multipstage build 및 Docker Hub
4732 단어 Docker
배경.
다중 레벨 빌드 기능 및 Docker Hub에 대한 Push 노트
준비물
Dockerfile
다중 스테이지의 Docker file과 사용하지 않는 Docker file을 준비합니다.
다무대 건축은 아래의 내용을 참조하시오
■ Use multi-stage builds
정상이었어
FROM golang:1.12.7-alpine
LABEL multi_stage="no"
WORKDIR /app
RUN apk add --no-cache make && \
rm -rf /var/cache/apk/* && \
mkdir src
COPY ./src ./src
COPY ./Makefile .
RUN make
ENTRYPOINT ["./main"]
CMD [""]
다중 레벨 구성FROM golang:1.12.7-alpine AS builder
LABEL multi_stage="no"
WORKDIR /app
RUN apk add --no-cache make && \
rm -rf /var/cache/apk/* && \
mkdir src
COPY ./src ./src
COPY ./Makefile .
RUN make
FROM busybox
LABEL multi_stage="yes"
WORKDIR /app
COPY --from=builder /app/main .
# COPY --from=0でも前ステージを指定してることになるのでそちらでも可能
COPY ./test.ini .
ENTRYPOINT ["./main"]
CMD [""]
각각 상술한 내용을 구축하다.완성된 인상은 이쪽이야.꼬리표는 사람들이 쉽게 이해할 수 있도록 덧붙인 것이다.
3MB는 정말 훌륭하네요.
$ docker image ls --filter 'label=multi_stage=no'
REPOSITORY TAG IMAGE ID CREATED SIZE
ryuichi1208/mumulti_stage_build nomal 508808fe62ea 45 minutes ago 353MB
$ docker image ls --filter 'label=multi_stage=yes'
REPOSITORY TAG IMAGE ID CREATED SIZE
ryuichi1208/mumulti_stage_build multi b5c000ea4c0a About an hour ago 3.25MB
Docker Hub Push
push를 위해 Docker Hub에 로그인합니다.
자세한 내용은 아래의 내용을 참조하시오.
■ Docker Hub Quickstart
Push가 만든 거 이쪽으로.
각자 다무대 건물을 사용한 것과 사용하지 않은 인상이다.
다른 호스트에서 Run Lenovo
$ docker run ryuichi1208/multi_stage_build:multi
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ryuichi1208/multi_stage_build multi 27cb320e59ac 2 hours ago 3.25MB
Reference
이 문제에 관하여(docker multipstage build 및 Docker Hub), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ryuichi1208/items/ce073626465f0729690f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)