티스토리 뷰

반응형

Dockerfile

  • 간단한 크롤링 코드를 도커 이미지로 만드는 예시이다. 
#Dockerfile

FROM node:14-alpine

MAINTAINER ingnoh "ingnoh@tistory.com"

WORKDIR /crawler

COPY ./package*.json ./
COPY ./crawler.js ./server.js

RUN npm install

CMD [ "npm", "start" ]
  • FROM: 현재 LTS 버전인 14를 사용하였음.
  • WORKDIR: 컨테이너 내부의 워킹 디렉토리 경로를 /crawler로 명시하였음.
  • COPY (1): npm install을 위해 package.json을 복사하였음.
  • COPY (2): 로컬 PC의 현재 경로에 있는 crawler.js를 컨테이너 내부에 복사할 때 server.js로 이름을 변경
  • RUN: npm install을 통해 package.json을 토대로 필요한 종속성을 설치
  • CMD: npm start를 사용하여 server.js를 실행
  • Dockerfile이 위치한 디렉토리에서 docker build -t my-crawler-test ./ 등으로 docker image를 빌드

 

참고

  • 위의 예시는 두번째 COPY에서 굳이 server.js로 파일 이름을 변경하지만, package.json의 내용과 일치한다면 그럴 필요 없음!
  • 덧붙여 CMD의 내용은 node server.js로 해도 무방하지만, 일반적으로는 npm start를 많이 사용한다고 함.
  • npm start의 경우 package.json의 scripts.start에 실행할 명령어가 명시되어 있어야 함.
  • scripts.start에 실행할 명령어가 명시되지 않은 경우, npm start는 node server.js 명령어를 사용한다고 함.
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함