Docker _ 3

이미지 만들고 배포하기

도커 이미지 만들기

도커는 이미지를 만들기 위해 컨테이너의 상태를 그대로 이미지로 저장하는 단순한 방법을 사용한다

예를 들어, 어떤 어플리케이션을 이미지로 만든다면 리눅스만 설치된 컨테이너에 어플리케이션을 설치하고 그 상태를 그대로 이미지로 저장한다. 가상머신의 스냅샷과 비슷한 방식이다

이런 과정은 콘솔에서 명령어를 직접 입력하는 것과 별 차이가 없으므로 쉘 스크립트를 잘아야하지만 좋은 샘플이 많이 공개되어있어 잘 몰라도 크게 걱정하지 않아도된다. 또한 컨테이너의 가벼운 특성과 레이어 개념을 이용하여 생성과 테스트를 빠르게 수행할 수 있다.

  • 도커 nginx파일 예시
FROM debian:buster-slim

LABEL maintainer="NGINX Docker Maintainers <[email protected]>"

ENV NGINX_VERSION   1.18.0
ENV NJS_VERSION     0.4.3
ENV PKG_RELEASE     1~buster

RUN set -x \
# create nginx user/group first, to be consistent throughout docker variants
    --중략--
COPY docker-entrypoint.sh /
COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d
COPY 20-envsubst-on-templates.sh /docker-entrypoint.d
ENTRYPOINT ["/docker-entrypoint.sh"]

EXPOSE 80

STOPSIGNAL SIGTERM

CMD ["nginx", "-g", "daemon off;"]

[참고]https://github.com/nginxinc/docker-nginx/blob/master/stable/buster/Dockerfile

이제 Ruby로 만들어진 간단한 웹 어플리케이션을 도커라이징(Dockerizing=도커 이미지를 만듬)을 해보겠다

좋은 웹페이지 즐겨찾기