Nest js 애플리케이션을 도커화하고 Dockerhub에 배포(docker-compose 없이)

2364 단어
안녕하세요 Peeps, 오늘은 노드 애플리케이션을 도커화하고 도커 허브에 배포하는 방법을 살펴보겠습니다. 데모 목적으로 this 프로젝트를 사용합니다.

1. 복제 응용 프로그램



원하는 폴더로 이동하고 애플리케이션을 복제합니다.

cd Desktop 
git clone https://github.com/manulangat1/nest-docker-jenkins.git



2. 도커 파일을 생성합니다.



프로젝트를 복제한 후 프로젝트의 루트에 Dockerfile 파일을 만듭니다.
Dockerfile은 이미지를 빌드하기 위해 사용자가 명령줄에서 호출하는 모든 명령이 포함된 텍스트 문서입니다.

FROM node:13-alphine # this is the base image in which our image will be based on. 
WORKDIR /usr/src/app # this sets the working directory for our image 
COPY package*.json . # this command copies the package.json and package-lock.json 
files from our host container to the docker container. 
EXPOSE 3000 # this exposes our port on the docker .
RUN npm install # this installs all our dependencies 
COPY . . # this copies all the other files from our host to our docker container
CMD ["npm" , "start:dev"] # this is the entry point of our application



3. 도커 이미지를 빌드합니다.



이제 도커를 사용하여 이미지를 빌드할 것입니다.

docker build -t nest-docker:nd-1.0 .


-t commands는 docker에게 이미지에 nest-docker라는 이름을 태그로 지정하라고 지시하고 . 컨텍스트는 프로젝트의 루트에서 Dockerfile을 찾도록 지시합니다.

4. 도커 이미지 실행



이제 도커 이미지를 실행합니다.

docker run -p 3000:3000 --name nest-service nest-docker:nd-1.0


-p는 포트를 이전에 노출한 포트에 바인딩하고 --name는 실행 중인 현재 컨테이너에 이름을 지정합니다.

5. 도커 허브에 배포합니다.



계정이 없으면 Dockerhub으로 이동하여 계정을 만드십시오. 로그인한 후 리포지토리를 생성하면 도커 이미지를 도커 허브에 배포하도록 설정됩니다.

다음 명령을 실행하여 dockerhub에 로그인합니다.

docker login



도커 이미지를 도커 허브로 푸시하려면 다음 명령을 실행합니다.

docker push nest-docker:nd-1.0



이제 dockerized nest 애플리케이션을 빌드하고 dockerhub에 배포했습니다.

일반적인 docker, Jenkins 및 DevOps에 대한 더 많은 기사를 보려면 저를 팔로우하세요.

좋은 웹페이지 즐겨찾기