nest.js拡張


Nest.JSグラフィックス
  • は、まずDockerfileを生成する.
  • NestJSはノードとは異なり、構築(ts->js)を実行するため、ファイル全体をコピーする必要はなく、生成したファイルをDockerイメージに入れるだけでよい.
  • ノードがインストールされている画像に基づいて生成されたファイルをコピーする.
  • Dockerfile
    ## base image for Step 1: Node 10
    FROM node:14 AS builder
    WORKDIR /app
    ## 프로젝트의 모든 파일을 WORKDIR(/app)로 복사한다
    COPY . .
    ## Nest.js project를 build 한다
    RUN npm install
    RUN npm run build
    
    
    # Step 2
    ## base image for Step 2: Node 10-alpine(light weight)
    FROM node:14-alpine
    WORKDIR /app
    ## Step 1의 builder에서 build된 프로젝트를 가져온다
    COPY --from=builder /app ./
    EXPOSE 8092
    ## application 실행
    CMD ["npm", "run", "start:prod"]
    
    Docker build
  • docker build -t hsnam/nest-docker:latest .