# | comment |
FROM | 컨테이너의 BASE IMAGE(운영환경) |
MAINTAINER | 이미지를 생성한 사람의 이름 및 정보 |
LABEL | 컨테이너이미지에 컨테이너 정보를 저장 |
RUN | 컨테이너 빌드를 위해 base image에서 실행할 commands |
COPY | 컨테이너 빌드시 호스트의 파일을 컨테이너로 복사 |
ADD | 컨테이너 빌드시 호스트의 파일(tar, url 포함)을 컨테이너로 복사 |
WORKDIR | 컨테이너 빌드시 명령이 실행될 작업 디렉토리 설정 |
ENV | 환경변수 지정 |
USER | 명령 및 컨테이너 실행시 적용할 유저 설정 |
VOLUME | 파일 또는 디렉토리를 컨테이너의 디렉토리로 마운트 |
EXPOSE | 컨테이너 동작 시 외부에서 사용할 포트 지정 |
CMD | 컨테이너 동작 시 자동으로 실행할 서비스나 스크립트 지정 |
ENTRYPOINT | CMD와 함께 사용하면서 command 지정 시 사용 |
★ example
FROM ubuntu:18.04 | base image ubuntu |
LABEL maintainer="Gildong Hong <hong@gmail.com>" | 컨테이너 정보 key-value |
# install apache | comment |
RUN apt-get update \ | 컨테이너 빌드시 실행될 명령어들 (\는 연속된 라인) |
&& apt-get install -y apache2 | layer 수가 적고 size 작은 것이 좋음 |
RUN echo "TEST WEB" > /var/www/html/index.html | |
EXPOSE 80 | 80 포트로 지정 |
CMD ["/usr/sbin/apache2ctl", "-DFOREGROUND"] | 컨테이너 동작시 (running) DFOREGROUND argument를 넣어서 apache2ctl 실행 |
728x90
반응형