Page 27 -
P. 27
registry.access.redhat.com/ubi8/ubi
)
$ for IMAGE in $IMAGES[@]; do
docker image pull ${IMAGE}; 1
done
# 도커 이미지 확인
$ docker image ls 도커 복습과 Hello, Kubernetes
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 20.04 4dd97cefde62 6 days ago 72.9MB
ubuntu 18.04 329ed837d508 6 days ago 63.3MB
alpine 3.11 4666da2f166f 13 days ago 5.61MB
registry.access.redhat.com/ubi8/ubi latest 4199acc83c6a 4 weeks ago 205MB
centos 8 300e315adb2f 3 months ago 209MB
centos 7 8652b9f0cb4c 3 months ago 204MB
gcr.io/distroless/static latest 626a0fa9032b 51 years ago 1.79MB
gcr.io/distroless/base latest a8c775b615ca 51 years ago 16.9MB
gcr.io/distroless/python3 latest c2596fdf7d32 51 years ago 49.6MB
gcr.io/distroless/java latest 85cdcf63cad1 51 years ago 130MB
gcr.io/distroless/nodejs latest 11334d286f73 51 years ago 118MB
다운로드한 이미지는 5MB에서 210MB까지 이미지 사이즈가 매우 다르다는 것을 확인할 수
있다.
그다음에는 COPY 명령으로 빌드할 머신에 있는 파일을 컨테이너에 복사한다. 가장 많이 사용하는
RUN 명령은 빌드 시에 컨테이너에서 명령어를 실행하는 명령이다. dnf/yum 명령어나 apt 명령어
로 패키지 설치 등 빌드에 필요한 명령어를 실행하는 것이 일반적인 사용법이다.
ENTRYPOINT 명령과 CMD 명령은 컨테이너가 기동할 때 실행하는 명령어를 지정할 때 사용된다. 예
를 들어 ENTRYPOINT=/bin/sleep, CMD=3600으로 되어 있으면 컨테이너가 기동할 때 /bin/sleep
3600이 실행된다. 아주 간단히 설명하면 $ENTRYPOINT $CMD가 실행된다고 보면 된다.
표 1-2 ENTRYPOINT와 CMD의 관계
ENTRYPOINT CMD 실행되는 명령어
"/bin/ls" "-a" /bin/ls -a
"/bin/ls" 지정 안 함 /bin/ls
지정 안 함 /bin/ls /bin/ls
"/bin/sh", "-c" "ls -a" /bin/sh -c "ls -a"
35
쿠버네티스_04.indd 35 2021-07-20 오후 1:32:57