Docker를 설치하고 간단하게 Nginx, Node 서버를 배포해봅니다.

Explanation

Docker에 대해 1~2년 전부터 엄청 많이 들어서 이름만 익숙했었는데요. 최근에 들어서야 (조~금) 사용하게 되어 간단하게나마 docker를 설치하고 사용해보는 것에 대한 글을 적어 보려 합니다.
시중에 docker에 관련된 책도 많은 것으로 보아 그 사용이나 활용에 대해 많은 방법들이 있을 것 같아요, 하지만 저는 깊이 있게 사용하지 않고 간단하게 테스트 환경과 상용의 환경을 같게 해서 코드나 데이터의 무결성에 조금 도움이 되는?? 정도로만 사용하기 때문에 Docker에 대해 퀵스타트 정도로 얕게 적어 보려 합니다.

전에는 Vagrant로 가상 환경을 만들어서 작업을 했었는데요, 제가 생각하는 가장 큰 둘의 차이는 Vagrant는 모든 OS의 가상 환경을 만들 수 있고 Docker는 리눅스 기반의 환경만 가능합니다. 저는 서버 환경을 Ubuntu만 사용하기 때문에 아주 간단하게 비교했을 때 속도 면에서 훨씬 Docker가 빠르답니다.

1. Docker 설치하기

우선 https://www.docker.com/ 사이트로 이동하여 회원가입을 하고 docker를 설치합니다.

맥OS 기준입니다.

1-1. Docker 홈페이지

1-2. Products > Docker Desktop 로 이동합니다.

1-3. 로그인 후 다운로드가 가능합니다. 회원이 아니라면 회원 가입 후 로그인 합니다.

1-4. Get Docker 버튼을 눌러 다운로드 한 후 설치하고, 실행해 줍니다.

1-5. 터미널을 열어주세요.

1-6. docker의 Getting started를 따라 진행하면 위와 같이 로컬 호스트 80번(기본값) 포트에 Nginx의 웹 페이지를 확인 할 수 있습니다.

2. Node 서버 띄우기

2-1. 간단하게 디렉토리를 만들고 ‘npm init’ 으로 패키지를 만듭니다. (express 설치)

2-2. index.js 파일을 만듭니다.

2-3. 모듈 파일을 복사하지 않도록 .dockerignore 파일을 만듭니다.

2-4. Dockerfile 파일을 만듭니다.

2-5. Docker 이미지를 만듭니다.

2-6. 이미지 생성이 끝나면 이미지가 잘만들어 졌는지 확인합니다.

2-7. 생성한 이미지를 실행합니다.

2-8. 이제 브라우저를 열고 localhost로 접속하면[포트 80번(기본값)] 위와 같이 ‘hello world’가 뜨는 걸 확인 할 수 있습니다.

3. 그 밖의 간단한 커맨드

3-1. 실행 중인 컨테이너 중지 및 삭제, 이미지 삭제