Open media vault 서버에 다양한 서비스를 설치하기 전 마지막 과정으로 nginx proxy manager을 설치하려고 합니다. nginx proxy manager은 가상 호스트/리버스 프록시 기능을 사용할 수 있도록 만들어진 웹 관리 툴로 콘솔을 통해 하나하나 설정하는 대신 웹에서 쉽게 관리할 수 있도록 해주는 도커 이미지입니다.
설치하기에 앞서 nginx proxy manager이 해주는 일이 무엇인지 간단히 알아보도록 합시다. 보통 도커 위에 웹 서비스를 설치하면 해당 컨테이너의 포트와 호스트 서버의 포트를 연결해주는 것으로 각 서버에 접속하게 만들죠. 하지만 이런 방식을 사용하게 되면 많은 포트를 공유기에 포워딩해줘야 할 뿐 아니라 서비스를 사용할 때마다 각각의 포트를 도메인 뒤에 적어 줘야 하는 불편함이 생깁니다.
위 문제를 해결하기 위해 등장한 것이 가상 호스트/리버스 프록시라는 기능을 사용합니다.
도메인의 서브도메인(webservice.pomvtest.duckdns.org와 같이 메인 도메인 앞에 추가적으로 적힌 서브도메인)을 서비스에 할당해서 해당 도메인의 서브도메인만 교체하는 것으로 서로 다른 서비스에 접속할 수 있도록 만드는 기능입니다.
물론 완전 서브도메인만 변경하는 것이 아니라 아예 다른 도메인과 서비스를 연결해줄 수도 있습니다.
오늘 설치할 nginx proxy manager은 위 과정을 콘솔 환경이 아니라 웹에서 할 수 있게 만들어주죠.
리눅스의 콘솔환경이 익숙지 않거나 직접 키보드를 쳐서 진행하기 귀찮은 분들에게 아주 추천하는 이미지입니다. 그럼 바로 어떻게 설치할 수 있는지 확인해보도록 합시다.
1. Nginx Proxy Manager 설치하는 방법
먼저 portainer에 접속하여 이미지 탭에서 “jlesage/nginx-proxy-manager”을 검색해줍시다. “Jc21”의 이미지를 사용할 수도 있지만 이번 포스팅에서는 데이터베이스를 내장해 추가적으로 설정해줄 필요가 없는 해당 이미지를 사용하도록 하겠습니다.
이미지를 열어보면 8080/8181/4443 포트를 호스트와 연결해줘야 하고 config 볼륨을 연결해 줘야 하는 것을 알 수 있습니다. Config 볼륨에는 다양한 설정들과 더불어 ssl 인증서 또한 저장되니 공유 폴더에 연결해주도록 하겠습니다.
Omv 컨트롤 패널로 돌아와서 새로운 웹 서버들을 위한 새로운 공유 폴더를 만들어줍시다. 그런 뒤 새로 만든 공유 폴더 안에 “npm”이라는 폴더를 생성해줬습니다. 혹시 공유폴더 추가 방법을 모르신다면 아래 링크를 방문해주세요.
이렇게 생성된 공유 폴더는 컨트롤 패널에서 위 사진에 보이는 방식대로 절대 경로를 표시하게 끔 설정해주면 경로가 나타납니다. [해당 경로 + /npm] 경로로 볼륨을 연결해주면 되겠죠?
(위 사진과 같은 사례에서는 [/srv/dev-disk-by-label-Test/webserver/npm])
또 open media vault의 컨트롤 패널 포트를 다른 포트로 변경해줍시다.
변경해주지 않으면 나중에 호스트 서버의 포트를 컨테이너 서버의 포트와 연결해줄 때 오류가 발생합니다. 변경 방법은 아래에서 확인할 수 있습니다.
Portainer의 컨테이너 탭으로 넘어가 컨테이너를 생성해주고 이미지를 할당해줍시다. 그런 뒤 포트를 [80 -> 8080], [443 -> 4443], [81 -> 8181]으로 설정해줍시다. http/https 포트를 컨테이너의 해당 포트와 연결해준 것입니다. 8181 포트는 nginx-proxy-manager의 컨트롤 패널 포트입니다.
아래로 내려와 볼륨 탭에서 새로운 규칙을 추가해줍시다. 그런 뒤 container 오른쪽 “bind” 버튼을 누르고 “/config” 폴더를 아까 만든 공유 폴더의 “npm” 폴더 경로와 연결해줍시다.
[bind 버튼을 눌러야 직접 경로를 적어 넣어줄 수 있습니다.]
네트워크 설정 또한 직접 만든 가상 네트워크로 할당해주고 원하는 ip로 설정해줍시다.
재시작 정책을 “Always” 로 설정해줍시다. 그런 뒤 컨테이너를 생성해줍시다. 그럼 설치가 완료된 겁니다.
설치가 완료된 뒤 openmediavault의 서버 아이피로 접속해보면 위와 같은 페이지나 나타납니다. 그러면 설치가 제대로 된 것입니다. 혹시 페이지가 제대로 나타나지 않는 분들은 위 과정을 제대로 따라오셨는지 확인해보세요.
다시 [서버 아이피:81]로 접속해보면 위와 같이 nginx-proxy-manager의 컨트롤 패널 로그인 페이지가 나타납니다. 초기 아이디와 비밀번호는 아래와 같으니 해당 아이디와 비밀번호로 접속해주세요.
아이디 : admin@example.com
비밀번호 : changeme
로그인하면 바로 로그인 이메일과 계정의 이름/닉네임을 변경할 수 있는 창이 나타납니다. 자신의 이메일과 이름에 맞게 변경해줍시다.
비밀번호 변경 창 또한 이어서 나타나니 어려운 비밀번호로 설정해줍시다.
모든 설정이 완료되면 nginx proxy manager의 메인 페이지가 나타납니다. 앞으로 모든 서비스의 웹페이지 접속 관리는 이 페이지에서 하게 될 겁니다.
Proxy host 페이지에서 도메인을 어떤 서비스에 연결할 것인지 결정해줄 수 있고 SSL Sertificates 페이지에서 각 도메인의 인증서를 관리할 수 있습니다.
사용 방법은 다음 포스팅의 nextcloud 설치 방법에서 알아보도록 합시다. 수고하셨습니다.
이렇게 이번 포스팅에서는 nginx proxy manager을 설치하는 방법에 대해서 알아보았습니다. 이 과정은 이후 설치할 웹 서비스들의 설치 과정을 조금 더 쉽게 만들기 위해 필요한 과정입니다.
다음 포스팅에서는 nextcloud라는 클라우드 서비스를 설치하여 궁극적으로 omv 서버에 연결된 공유 폴더들을 외부에서도 접근할 수 있게 만들 겁니다. 물론 nextcloud에서 제공하는 어플이나 다양한 플러그인 등에 대해서도 차근차근 알아보려 합니다.
그럼 이번 포스팅은 여기에서 마무리짓도록 하고 다음에 다른 내용으로 찾아오도록 하겠습니다.
긴 글 읽어 주셔서 감사합니다.
이 글의 저작권은 전적으로 작성자인 P_Emblem에게 있으며
허락 없는 사용을 금합니다.
'운영체제 > Nas[OMV]' 카테고리의 다른 글
OMV(OpenMediaVault) 나스 서버[14]nextcloud 외부저장소 추가하는 방법 (0) | 2021.01.03 |
---|---|
OMV(OpenMediaVault) 나스 서버[13]리버스 프록시, 가상호스트 설정하는 방법 (12) | 2021.01.01 |
OMV(OpenMediaVault) 나스 서버[12]Nextcloud 설치하는 방법 (7) | 2020.12.30 |
OMV(OpenMediaVault) 나스 서버[10]phpmyadmin 설치하는 방법 (2) | 2020.12.26 |
OMV(OpenMediaVault) 나스 서버[9]portainer 사용/mariaDB 설치 방법 (6) | 2020.12.24 |
OMV(OpenMediaVault) 나스 서버[8]omv-extra 도커 portainer 설치하기 (0) | 2020.12.22 |