gnusraun

Docker node.js 컨테이너 만들기 본문

DevOps/Docker

Docker node.js 컨테이너 만들기

gnusraun 2023. 6. 11. 22:36
728x90

1. nodejs 다운로드 18.16.0 LTS

https://nodejs.org/ko

 

Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

2. 디렉토리 지정 후 node 초기화

# 디렉토 경로 만들기
$ mkdir ./node_test

# node 초기화
$ npm init -y

# 예제 앱 만들기
$ npm i express

 

3. app.js 만들기

# 기본 앱 만들기
const express = require('express');

const app = express();

app.get('/', (req, res) => {
    res.send('Hello world');
});

# port는 8181로 지정, 사용자가 알맞게 수정가능
app.listen(8181, () => console.log('Server is running'));

 

4. Dockerfile 만들기

# node Image 18 version
FROM node:18

# 컨테이너에 있는 app 경로 지정
WORKDIR /app

# package*.json 파일을 app에다 복사한다.
COPY package*.json /app/

# ci를 이용하여 버전 일치시켜줌
RUN npm ci

# app.js 파일을 app에다가 복사한다.
COPY app.js /app/

# 8181 port 연결
EXPOSE 8181

# 컨테이너를 생성 후 실행할 때 수행
CMD ["node", "app.js"]

 

파일 결과

5. Docker Image 생성

# 옵션
# -f Docker파일 지정 (생략시 현재 경로에 Dockerfile)
# -t 도커 이미지명 (생략시 랜덤의 이름으로 생성)
$ docker build -f Dockerfile -t node-docker .

# docker 이미지 생성 확인
$ docker images

 

 

6. Docker Container 생성

# 옵션
# -d 백그라운드 실행
# -p 포트
# --name 컨테이너 이름
# 맨뒤에 이름은 docker image명
$ docker run -d -p 8181:8181 --name node-test-container node-test-docker

# 현재 실행되고 있는 컨테이너 상태
# up: 컨테이너가 실행중, exited: 종료 상태, pause: 일시중지 상태
$ docker ps -a

 

 

7. 결과 확인

 

8. Docker Desktop 확인

Docker Image
Docker Containers - Actions에서 네모버튼으로 컨테이너 중지 가능

 

도커 이미지와 컨테이너가 잘 나타나 있는 것을 확인할 수 있다.

 

 

 

 

 

출처 - https://www.youtube.com/watch?v=LXJhA3VWXFA

도커 아이콘 참고 - www.flaticon.com/kr/free-icons/docker

 

23종의 무료 도커 아이콘

SVG, PSD, PNG, EPS 포맷 또는 웹폰트로 제공되는 23종 이상의 도커 아이콘을 다운로드받으세요. 최대의 무료 아이콘 데이터베이스 - Flaticon.

www.flaticon.com:443

 

728x90

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

Docker 명령어 모음  (0) 2024.01.19
Docker 설치하기 - Ubuntu  (0) 2024.01.19
Docker Java war 컨테이너 만들기  (0) 2023.06.11
Docker python 컨테이너 만들기  (0) 2023.06.11
Docker 설치하기 - MacOS  (0) 2023.06.11