도커(Docker)는 애플리케이션을 컨테이너로 패키징하여 손쉽게 배포하고 실행할 수 있는 오픈 소스 플랫폼입니다. 자바스크립트 앱을 도커 컨테이너로 구성하면 앱의 의존성 관리와 환경 일관성을 유지하기 쉬워집니다. 이 글에서는 자바스크립트 앱을 위한 도커 컨테이너를 구성하고 관리하는 방법을 알아보겠습니다.
1. 도커 설치
먼저, 도커를 설치해야 합니다. 도커 공식 사이트에서 운영체제에 맞는 도커를 다운로드하고 설치할 수 있습니다.
참고 링크: Docker 공식 사이트
2. 도커 이미지 생성
다음으로, 자바스크립트 앱을 위한 도커 이미지를 생성해야 합니다. 도커 이미지는 앱의 실행 환경과 의존성을 정의한 파일로, 컨테이너를 생성하는 데 사용됩니다.
자바스크립트 앱의 도커 이미지는 Dockerfile
이라는 특수한 파일로 정의됩니다. 아래는 예시로 제공되는 자바스크립트 앱의 Dockerfile
입니다.
# 베이스 이미지 설정
FROM node:14
# 앱 디렉토리 생성
WORKDIR /app
# 앱 종속성 설치
COPY package*.json ./
RUN npm install
# 앱 소스코드 복사
COPY . .
# 컨테이너 실행 명령어 설정
CMD [ "npm", "start" ]
위 Dockerfile
은 Node.js 14 버전을 베이스 이미지로 사용하고, 앱의 종속성을 설치한 뒤, 소스 코드를 복사하여 컨테이너를 실행하는 설정을 담고 있습니다.
3. 도커 이미지 빌드
Dockerfile
이 준비되었으면, 해당 파일이 있는 디렉토리로 이동하여 도커 이미지를 빌드합니다. 아래 명령어를 사용하면 됩니다.
docker build -t <이미지 이름> .
-t
옵션은 이미지에 태그를 붙이는 옵션으로, 이미지를 구분할 수 있도록 도와줍니다.
4. 도커 컨테이너 실행
이제 도커 이미지를 사용하여 컨테이너를 실행할 수 있습니다. 실행할 때는 앞서 만든 도커 이미지와 포트 매핑, 볼륨 마운트 등의 옵션을 지정해야 합니다.
아래는 예시로 제공되는 컨테이너 실행 명령어입니다.
docker run -p <호스트 포트>:<컨테이너 포트> -v <호스트 디렉토리>:<컨테이너 디렉토리> -d <이미지 이름>
위 명령어에서 <호스트 포트>
는 앱에 접근할 수 있는 포트를 의미하며, <컨테이너 포트>
는 도커 컨테이너에서 열려 있는 포트를 의미합니다. <호스트 디렉토리>
와 <컨테이너 디렉토리>
는 호스트와 컨테이너 간 파일 공유를 위한 디렉토리 경로입니다. -d
옵션은 컨테이너를 백그라운드에서 실행하도록 설정합니다.
5. 도커 컨테이너 관리
도커 컨테이너는 앱의 실행 환경을 구성하는 데 매우 유용합니다. 컨테이너를 유지 및 관리하기 위해 다음과 같은 명령어를 사용할 수 있습니다.
docker ps
: 현재 실행 중인 컨테이너 목록을 확인합니다.docker stop <컨테이너 ID 또는 이름>
: 실행 중인 컨테이너를 중지합니다.docker start <컨테이너 ID 또는 이름>
: 중지된 컨테이너를 시작합니다.docker restart <컨테이너 ID 또는 이름>
: 실행 중인 컨테이너를 재시작합니다.docker rm <컨테이너 ID 또는 이름>
: 컨테이너를 삭제합니다.
마무리
이제 자바스크립트 앱을 위한 도커 컨테이너 구성 및 관리 방법에 대해 알아보았습니다. 도커를 통해 앱의 배포와 실행을 효율적으로 관리할 수 있으며, 환경 일관성을 유지할 수 있는 장점이 있습니다. 도커를 활용하여 개발과 배포를 더욱 효율적으로 진행해보세요!
#javascript #도커