본문 바로가기

이전 포스팅에서 도커로 몽고DB를 설치해 봤습니다.

시놀로지 도커로 몽고DB 설치하는 방법 바로가기

몽고DB는 설치가 되었으나 이 DB만으로는 CLI외에 Database를 볼 수는 없습니다. 이 몽고DB를 보기위한 방법 중 하나는 Mongo-express를 이용하는 방법입니다. Mongo-expressphpMyAdmin처럼 웹브라우저로 몽고DB를 볼 수 있습니다.

이 Mong-express를 시놀로지 도커로 설치해 보겠습니다.

Mongo-express 도커 설치하기

먼저 시놀로지 DSM에서 도커를 엽니다.

레지스트리

  1. 레지스트리 메뉴를 선택합니다.
  2. 검색창에서 mongo로 검색을 합니다.
  3. 2번째 줄에 있는 mongo-express더블 클릭하여 다운로드를 받습니다.

이미지
다운로드 받은 도커이미지는 이미지 탭에서 확인할 수 있습니다.

  1. 이미지 메뉴를 선택합니다.
  2. 다운로드가 완료된 mongo-express를 더블클릭합니다.

컨테이너생성
다운로드 받은 이미지로 컨테이너를 만들어 줍니다.

  1. 임의의 컨테이너 이름을 입력합니다.
  2. 고급설정 버튼을 클릭합니다.

고급 설정

  1. 실제 서비스로 사용한다면 고급설정 탭에서 자동 재시작 활성화를 체크합니다. 혹시 어떤 이유로 몽고DB가 죽어버리면 자동으로 재시작을 시켜주는 것입니다. 테스트나 개발용이면 선택하지 않는 것이 좋습니다. 죽어버린 이유를 찾아야 하닌까요.

볼륨은 설정할 것이 없어서 넘어 갑니다.

네트워크도 설정할 것이 없어서 넘어 갑니다.

포트 설정
포트설정을 해 주어야 합니다. 로컬포트로 접근을 하면 자동으로 컨테이너 포트로 연결해 주는 역활을 합니다.

  1. +를 클릭하여 포트를 추가 합니다.
  2. 시놀로지의 로컬 포트 중 원하는 포트를 임의로 입력합니다.
  3. 컨테이너 포트는 8081이며 변경하지 않는 것이 좋습니다.

링크 설정
링크를 설정합니다. 링크는 mongo-express가 실행될 때 자동으로 같이 실행되어야 할 컨테이너를 연결해 주는 것입니다.
Mongo-express가 시작되면 당연히 MongoDB가 실행되어야 하므로 MongoDB를 링크걸어 줍니다.

  1. +를 클릭하여 링크를 추가해 줍니다.
  2. 앞서 설치한 몽고DB 컨테이너를 선택합니다.
  3. 별칭으로 mongo를 입력합니다. 변경하면 안됩니다.

환경 설정
마지막으로 환경변수를 추가해 줍니다.

  1. 기존에 있던 변수 ME_CONFIG_BASICAUTH_USERNAME에는 Mongo express의 임의의 유저네임을 입력합니다.
  2. 기존에 있던 변수 ME_CONFIG_BASICAUTH_PASSWORD에는 Mongo express의 임의의 비밀번호를 입력합니다.
  3. +를 클릭하여 환경 변수 2개를 추가해 줍니다.
  4. 추가한 변수 1개 ME_CONFIG_MONGODB_ADMINUSERNAME에는 Mongo DB의 정해져 있는 유저네임을 입력합니다.
  5. 추가한 변수 1개 ME_CONFIG_MONGODB_ADMINPASSWORD에는 Mongo DB의 정해져 있는 비밀번호를 입력합니다.

필요한 경우 ME_CONFIG_MONGODB_PORT를 추가하여 MongoDB의 기본 포트인 27017을 다른 임의의 포트로 변경했을 때 설정할 수 있습니다. 다만 현재 이 환경변수를 지정하면 오류가 발생합니다.

완료
컨테이너를 생성완료 합니다.

컨테이너
이렇게 컨테이너 메뉴에 보면 mongo-express와 mongoDB가 2개 모두 활성화 되어 있는 것을 확인하시면 됩니다.

포트 열기

설치는 완료되었고 이제는 사용할 수 있게 포트(Port)를 열어줘야 합니다. 포트(Port)는 일단 시놀로지에서 열어줘야 내부에서 접근이 가능하고 공유기에서 열어줘야 외부에서도 접근이 가능 합니다.

시놀로지에서 포트 열기

제어판
시놀로지의 제어판을 열고 보안항목으로 접속합니다.

  1. 제어판에 접속을 합니다.
  2. 보안 메뉴를 선택합니다.
  3. 방화벽 탭을 선택합니다.
  4. 규칙 편집을 클릭합니다.

방화벽 열기
도커가 설치되면 대부분 자동적으로 내장 응용프로그램 리스트에 목록이 나타납니다. 단체 체크를 함으로써 포트를 열어줄 수 있습니다. 만약에 리스트에 나타나지 않으면 별도로 포트(Port)를 등록하고 열어줘야 합니다.

  1. Docker mongoDBDocker mongo-express를 체크하여 활성화 합니다.

이제 내부망에서는 몽고DB에 접근하고 사용할 수 있습니다.

공유기에서 포트 열기

만약 내부망이 아니고 외부 인터넷망에서 이 몽고 익스프레스에 접근하려면 공유기에서 포트포워딩을 해 줘야 합니다. 저는 ipTIME을 사용하기때문에 ipTIME를 기준으로 설명드리겠으나 다른 공유기에도 동일한 기능이 있습니다.

포트포워딩

  1. 좌측메뉴 중 포트포워딩 설정 메뉴를 클릭합니다.
  2. 규칙이름을 임의로 임력하고 내부IP주소를 NAS의 IP주소를 입력합니다. 그리고 외부포트를 원하는 임의의 포트를 작성하고 내부포트는 시놀로지의 포트(몽고DB컨테이너와 연결된 포트)를 입력합니다.
  3. 등록으로 하면 포트포워딩 리스트에 등록이 되면 완료됩니다.

나만모르는 이야기

여행, 맛집,IT, 리뷰에 대한 이야기를 공유하는 블로그 .