능글맞은 구렁이

Docker - Simple Project(express, image생성) 본문

DevOps/Docker

Docker - Simple Project(express, image생성)

보라색츄르 2023. 12. 26. 00:00

아주아주 심플한 도커프로젝트를 만들어서

이미지생성, 도커 실행, 도커 중지등 기능 실행을 해보겠다.

 

1. 기본 셋팅

- docker desktop을 실행

- 폴더 생성

 

 

2. npm 명령어 입력

npm init -y 를 실행시켜 프로젝트를 초기화 시킨뒤

npm i express 를 실행시켜

express프레임워크를 사용하여 심플한 백엔드를 만들어준다.

 

 

3. index.js 작성.

const express = require('express');

const app = express();

app.get('/', (req, res)=>{
    res.send('<h2>🐋Hello World!🐋</h2>');
});


app.listen(3000, ()=> console.log('Server is running'));

 

 

- index.js를 작성했다면 node index.js를 실행해보자

그럼 아래와같이 localhost:3000을 입력하였을때

🐋Hello World!🐋가 출력된것을 알수있다.

 

 

4. Dockerfile 파일 생성

- 이제 도커 이미지를 생성하고 실행하기 위해 dockerfile을 생성하여 아래의 소스를 입력한다.

#NODE버전
FROM node:16-alpine

#컨테이너 안에서 어떤경로의 프로젝트를 COPY해올지 명지
#linux의 CD와 같은 명령어
WORKDIR /app

#copy할 대상
COPY package.json package-lock.json ./

#npm 실행!
#npm install도 가능하지만 ci를 사용한다면 버전까지 동일하게 다운받아준다.
RUN npm ci

COPY index.js .

ENTRYPOINT [ "node", "index.js" ]

 

 

5. 터미널에서 빌드실행

- docker build . 입력한다.

그럼 위와같이 명령어들이 실행된다.

 

 

6.이미지 확인

docker images 라고 명령어를 실행하면 위와 같이 이미지가 생성된걸 알수 있다.

 

 

7. 도커 실행

docker run -p 3000:3000 b55cac6064a9

docker images명령에서 나온 Image Id를 가지고 위와같이 명령어를 실행시켜주면 완료

docker desktop에서도 확인이 가능하다.

 

 

 

8. 도커 중지

정지를 하기위해선 docker desktop을 이용해도 좋다.

하지만 터미널을 이용하고 싶다면 

- 새 터미널을 실행

- docker ps 

- docker stop elastic_brahmagupta

 

 

9. 이미지의 이름을 생성하고 싶을때

- 빌드 : docker -build -t simple-docker 

- 실행 :docker run -d -p 3000:3000 simple-docker

'DevOps > Docker' 카테고리의 다른 글

Docker - image push  (1) 2024.02.06
Docker - 이미지삭제, 컨테이너 삭제  (0) 2024.01.16
Docker - 인터렉티브 모드  (0) 2024.01.16
Docker - 연결모드(attached), 분리모드(detached)  (0) 2024.01.16
Docker란?  (2) 2023.12.21
Comments