요약

Dockerfile을 활용한 이미지 만들기

1. Dockerfile 작성

  • 아래 문법에 따라 Dockerfile을 작성
FROM ubuntu:14.04
LABEL "purpose"="practice"
RUN apt-get install apache2 -y
ADD test.html /var/www/html
WORKDIR /var/www/html
RUN ["/bin/bash", "-c", "echo hello >> test2.html"]
EXPOSE 80
CMD apachectl -DFOREGROUND

2. Dockerfile 빌드

  • Dockerfile 빌드를 통해 mybuild:0.0 이미지 생성
docker build -t mybuild:0.0 ./

3. Docker Run

  • 생성된 이미지를 통해 컨테이너 기동
docker run -d --name myserver -p 8888:80 myserver mybuild:0.0

4. Exercise

5. Dockerfile 빌드 과정 설명

6. Dockerfile 문법 설명

7. Cache 활용 설정

  • Dockerfile은 기본적으로 이전에 빌드한 이미지 레이어는 재활용하여 이미지를 생성함
  • Dockerfile을 빌드하고 같은 내용의 Dockerfile2를 만들어 빌드하면 별도 중간 이미지 생성 없이 이미지가 만들어짐
docker build --no-cache -t mybuild:0.0 ./
  • 캐싱을 사용하고 싶지 않을 경우
docker build --no-cache -t mybuild:0.0 ./
  • 캐시로 사용할 이미지를 지정하는 경우
docker build --cache-from nginx -t myExtendNginx:0.0 ./

6. whms Dockerfile 만들기

옵션

  • ENV: 환경변수, -e 옵션과 같은 효과
...
ENV MYSQL_ROOT_PASSWORD=passwd
ENV mysql_database=wordpress
...
  • VOLUME: 호스트와 공유할 컨테이너 내부 디렉토리 설정
VOLUME /home/volume
  • ARG: 변수값 설정 –build-arg 옵션 사용
ARG: arg001
ARG: arg002

docker build --build-arg arg001=dev -t container:0.0 ./
  • USER: 사용자 계정 이름이나 UID 설정
RUN groupadd -r author && useradd -r -g author user001
USER user001

Dockerfile 명령어 참고

카테고리:

업데이트:

댓글남기기