[nodejs] Node.js 애플리케이션의 Docker 이미지 관리

이 기술 블로그에서는 Node.js 애플리케이션을 Docker 이미지로 관리하는 방법에 대해 알아보겠습니다. Docker는 컨테이너화된 애플리케이션을 쉽게 관리하고 배포할 수 있는 플랫폼으로, Node.js 애플리케이션을 Docker로 패키징하는 것은 매우 효율적입니다.

1. Dockerfile 작성

먼저, Node.js 애플리케이션을 Docker 이미지로 빌드하기 위해 Dockerfile을 작성해야 합니다. 아래는 간단한 Node.js 애플리케이션의 Dockerfile 예시입니다.

# 기본 이미지
FROM node:14

# 앱 디렉토리 생성
WORKDIR /usr/src/app

# 앱 의존성 설치
COPY package*.json ./
RUN npm install

# 앱 소스 추가
COPY . .

# 앱 실행
CMD [ "node", "app.js" ]

위 예시에서는 Node.js 14 버전을 기반으로 하는 이미지를 사용하고, 애플리케이션을 /usr/src/app 디렉토리에 설치하고 실행하는 과정을 정의하고 있습니다.

2. Docker 이미지 빌드

작성한 Dockerfile을 사용하여 Node.js 애플리케이션의 Docker 이미지를 빌드할 수 있습니다. 아래 명령어를 사용하여 Docker 이미지를 빌드합니다.

docker build -t my-node-app .

위 명령어에서 -t 옵션은 이미지의 태그를 지정하는데 사용되며, my-node-app은 원하는 태그로 변경할 수 있습니다.

3. Docker 컨테이너 실행

이제 빌드한 Docker 이미지를 사용하여 컨테이너를 실행할 수 있습니다. 아래 명령어를 사용하여 Node.js 애플리케이션을 실행합니다.

docker run -p 3000:3000 my-node-app

위 명령어에서 -p 옵션은 호스트와 컨테이너의 포트를 매핑하는데 사용됩니다. 따라서, Node.js 애플리케이션은 호스트의 3000번 포트로 노출됩니다.

Node.js 애플리케이션을 Docker 이미지로 관리하면 애플리케이션의 배포와 확장이 쉬워지며, 환경 일관성을 유지할 수 있습니다.

이상으로 Node.js 애플리케이션의 Docker 이미지 관리에 대해 알아보았습니다. Docker를 사용하여 Node.js 애플리케이션을 효율적으로 관리할 수 있습니다.

참고 문헌: