DockerFile을 통해 이미지 생성하기
Created:
Dockerfile로 node를 사용하여 간단한 웹페이지를 띄워보고자 한다.
Dockerfile 작성
아래와 같이 Dockerfile을 작성한다.
FROM node:11.11.0
USER root
ENV app /data/app
RUN apt-get -y update
ADD index.js $app/
ADD package.json $app/
WORKDIR $app
RUN npm install
CMD ["/usr/local/bin/node", "/data/app/index.js"]
FROM
: 베이스 이미지를 가져온다.
USER
: 명령을 사용할 유저를 설정한다.
ENV
: 환경변수를 정의한다.
RUN
: 소프트웨어 설치나 업데이트등의 명령을 수행한다.
ADD
: 로컬 파일을 이미지에 복사한다. 위 코드는 node.js를 실행시키기 위해 필요한 최소의 파일만 복사했다.
WORKDIR
: RUN, CMD등 명령어가 실행될 디렉토리를 설정한다.
CMD
: 컨테이너 내에서 프로세스를 실행시킬 수 있다. 위 코드는 node 프로세스를 실행했다.
Dockerfile 빌드
작성한 Dockerfile의 경로에서 아래와 같은 명령어로 이미지를 생성한다.
docker build -t docker-node-test:latest .
잘 생성 되있는지 확인
docker images
컨테이너 생성및 실행
컨테이너를 생성및 실행
docker run -p 8080:8080 -d docker-node-test
컨테이너가 잘 생성되었는지 확인
docker ps
컨테이너 목록에 docker-node-test
가 있다면 제대로 실행된 것이다.
curl localhost:8080
Hello world
가 출력된다.
Comments