• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글

Nginx Reverse Proxy를 쉽게 사용하기 위한 Proxy-manager 구축하기.(NPM)

달소 달소 8043

5

44

추가추가

 

https://svrforum.com/svr/284432

안녕하세요. 달소입니다.   이번글은 홈서버에서 가장 유용하게 사용할수 있는 팁이자 이해만하신다면 정말 쉽게 사용할 수 있는방법입니다.   ...
달소 | 2022.05.06

 


 

안녕하세요. 달소입니다.

 

오늘도 새로운 정보를 하나 주워왔습니다 ㅋㅋ..

오늘 라우터가 도착하기로해서 리버스프록시 셋팅을 바꾸려고 이것저것 찾아보는데 

 

Proxy-Manager 라는 Docker Image가 존재하더군요.

 

https://nginxproxymanager.com/

Docker container and built in Web Application for managing Nginx proxy hosts with a simple, powerful ...

 

nginx의 리버스프록시와 Let's Encrypt 인증서를 쉽게 발급받을 수 있도록 도와주는 이미지입니다.

 

사전준비

설치 OS는 Ubuntu 20 LTS

docker,docker-compose 설치

 

없으면 apt install docker.io docker-compose

docker-compose로 컨테이너 생성하기.

먼저 데이터를 저장할 디렉터리를 먼저 생성해주세요.

mkdir -p /data/proxy-manager

 

cd /data/proxy-manager

vi docker-compose.yml

 

80,443은 웹서비스를 위한 포트 81번은 관리를 위한 웹페이지입니다.

 

version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    environment:
      DB_MYSQL_HOST: "db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
  db:
    image: 'jc21/mariadb-aria:latest'
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
    volumes:
      - ./data/mysql:/var/lib/mysql

 

이제 docker-compose up -d 명령어로 컨테이너를 만들겠습니다.

 

image.png.jpg

 

설치후 docker ps 명령어로 컨테이너를 확인할 수 있고 ip:81번으로 접속해주세요.

 

image.png.jpg

 

계정정보는 아래 정보로 입력해주면됩니다.

 

Email:    admin@example.com
Password: changeme

image.png.jpg

 

로그인하면 계정명 pw 다변경해야합니다.

 

image.png.jpg

 

 

로그인 하고나오면 이제 대시보드, 호스트, 액세스리스트, 인증서 등 확인이 가능합니다.

 

image.png.jpg

 

image.png.jpg

 

image.png.jpg

 

npm의 80번 포트로 접근하면 아래처럼 Congration이 나옵니다 

 

image.png.jpg

 

인증서 발급부터 프록시 실습은 다음글에서 작성하도록 하겠습니다.

신고공유스크랩
44
best ruungjiBest 2023.05.13. 02:14
<ip>:81 npm 웹로그인 과정에서 Bad Gateway 오류 발생시,
docker ps 로 컨테이너 id 확인하여, docker logs <컨테이너_id> 로 로그 조회했을 때,
MySQL이 정상적으로 구동되지 않는 경우에 오류가 뜨는 것으로 보입니다.

저 같은 경우,
- ./data/mysql:/var/lib/mysql 를
- ./mysql:/var/lib/mysql 로 수정하여 해당 문제 해결하였습니다.
profile image
달소 글쓴이 2021.07.09. 15:40
테돌아이

down을 하면 자동으로 삭제도 됩니다.

볼륨매칭되어있는 폴더들만 추가로 삭제 후 다시만들어주시면되요

 

포트만 변경하시는거라면 down 후 설정파일바꾸고 up -d만 해줘도 설정값 변경됩니다.

테돌아이 2021.07.09. 16:01
달소

헐...

나름 스스로 해보려고 했는데 이런 쉬운 방법이

저는 Portainer 설치를 해서 그곳에서 컨테이너 삭제를 했네요.

감사합니다.

테돌아이 2021.07.09. 16:39

성공을 하였습니다.

공유기 포트포워딩을 우분투 ip 에 대한 80과 443 포트를 열어주니 되네요.

감사합니다.

이제 어느정도 해결은 되었네요.

혹시 자동으로 갱신은 없나요

profile image
달소 글쓴이 2021.07.09. 18:52
테돌아이

자동갱신은 CLI환경에서는 가능한데 프록시매니저는 찾아보셔야할듯합니다.

테돌아이 2021.07.11. 19:14

헤놀 아이피가 XXX.XXX.XXX.57

우분투아이피 XXX.XXX.XXX.58

라고 과정을 하고요.

 

공유기에서 내부아이피를 헤놀로 입력해서 포트포워딩 80,443 두개를 열었습니다.

헤놀에서는 잘 되는데 우분투에서는 동일하게 했는데 안됩니다.

뭐가 문제일까요?

 

블랙앤해적 2022.10.07. 20:42

Error starting userland proxy: listen tcp4 0.0.0.0:443: bind: address already in use

443포트가 사용중이라 생성이 안되는데요.. 443포트 사용중인게 없거든요.. 먼가 해줘야 하는데 검색이 잘안되네요.

profile image
달소 글쓴이 2022.10.09. 22:14
블랙앤해적

시놀로지의 경우 443 포트를 dsm에서 점유하고있기때문에 타 포트를 적어주시고 포트포워딩을 해당포트로해주시면됩니다.

ex) 8080:80, 8443:443으로 매핑하고 포트포워딩시 공유기의 80을 8080으로 443은 8443으로요

장작_범댕이 2023.01.19. 10:01
리버스프록시를 하려면 무조건 도메인을 사야하는건가요?
사야한다면 무료도메인좀 알려주세요ㅠㅠ
지금은 내도메인.한국 에서 공유기IP 연결시켜놨습니다
profile image
달소 글쓴이 2023.01.19. 12:14
장작_범댕이
하위도메인을 사용하기때문에 무조건 사야되는건 아니지만 구매하시는편이 훨씬낫습니다.
개인적으로는 클라우드 플레어 추천드립니다.

무료도메인은.. 뭐 딱히 추천드리지는 않지만 ducksdns 사용가능합니다
장작_범댕이 2023.01.20. 05:58
달소
알려주신 방법으로 dsm페이지까지 들어가는덴 성공했습니다!! 하지만 모바일에서 쓸 ds file이 안됩니다ㅠㅠ
장작_범댕이 2023.01.20. 20:35
장작_범댕이
와우와우 도메인에서 포트를 80번으로 하니깐 정상적으로 되네요
앱에서 사이트로 인식 안하고 큌커넥트 아이디로 인식하나봅니다!!ㅎㅎ
카노푸스 2023.04.18. 11:27
이대로 따라하면 bad gateway 뜨고. https://nginxproxymanager.com/setup/#running-the-app 여기 홈페이지에 3.8버전 쓰면 되네요
ruungji 2023.05.13. 02:14
<ip>:81 npm 웹로그인 과정에서 Bad Gateway 오류 발생시,
docker ps 로 컨테이너 id 확인하여, docker logs <컨테이너_id> 로 로그 조회했을 때,
MySQL이 정상적으로 구동되지 않는 경우에 오류가 뜨는 것으로 보입니다.

저 같은 경우,
- ./data/mysql:/var/lib/mysql 를
- ./mysql:/var/lib/mysql 로 수정하여 해당 문제 해결하였습니다.
123

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
후기 서버포럼 덕분에 proxmox 이사 완료 했습니다 ㅎㅎ 5 N4100 3일 전18:56 380 +3
가이드 SAS3008 칩셋 카드 IT 펌웨어 먹이기 4 펜타네스트 3일 전18:39 276 +1
후기 오랜만에 immich 이미지 업데이트 후기/가이드(?). 1.86 -> 1.101 3 달소 5일 전21:35 271 +1
3842 질문
normal
bass9030 2시간 전00:43 18 0
3841 잡담
normal
칼룬 9시간 전18:12 94 0
3840 질문
normal
늘맑음 12시간 전15:10 121 0
3839 질문
image
게르노 14시간 전12:26 46 0
3838 잡담
normal
bong90a 16시간 전10:50 273 0
3837 후기
image
추주비 16시간 전10:33 179 0
3836 질문
normal
angrynerd 1일 전14:11 360 0
3835 오픈소스
image
달소 3일 전23:00 348 0
3834 후기
normal
N4100 3일 전18:56 380 +3
3833 가이드
file
펜타네스트 3일 전18:39 276 +1
3832 질문
image
똥쓰똥쓰 3일 전17:02 259 0
3831 후기
image
동도리군 3일 전10:27 297 0
3830 질문
image
칼룬 4일 전11:56 74 0
3829 질문
image
초보나스 4일 전11:13 311 0
3828 질문
image
kmw_ 5일 전22:29 203 0
3827 후기
image
달소 5일 전21:35 271 +1
3826 질문
normal
ljr10 5일 전21:33 167 0
3825 질문
normal
서버구축하자 5일 전16:35 157 0
3824 질문
image
서버가갖고싶어요 6일 전09:07 344 0
3823 질문
image
sH. 6일 전05:35 166 0