[트러블슈팅][Nginx] .app 도메인 구매 후 npm 연결까지 도달하기

DEV/Server

[트러블슈팅][Nginx] .app 도메인 구매 후 npm 연결까지 도달하기

BI3A 2023. 12. 19. 11:15

반응형

안되는 이유는 모르겠고 되는 이유는 더더욱 모르겠을 때


 

1. 문제 상황 : .app 도메인 구매했는데 npm 접속이 안돼요..

문제 상황 이전 환경 배경
1. 서버 : 열었음
2. 도메인 : 구매해서 레코드 비공인 IP로 넣었음
3. nslookup ip로 날려봤는데 : 연결 잘 되어있음
4. ping 날려봤는데 : 잘 날아감

 

2. 문제 상황 이전 작업해본 내용들

1) 서버 : 열려있음

서버는 잘 열려있다.

 

2) 도메인 : 구매해서 레코드 서버 비공인 IP로 잘 넣었음

레코드 서버는 비공인 IP로 잘 들어가있다.

3) nslookup, Ping 도메인 : 잘 되어 있음

 

3. 문제 원인 : .app 도메인은 기본적으로 http 연결을 지원하지 않음

본인이 구매한 도메인이 .app이라면 레코드 설정을 통해 지정한 도메인 주소로 접속할 시
https 로 연결되는 것을 확인할 수 있다.

http 로 강제 연결할 수 없는 상황이다.
그러나, npm으로 접속하고자 하는 연결도 기본값은 http이기 때문에 연결 불가능한 상황이 발생한다.

 

4. 문제 해결 방법 :

1) 공인 IP(Public IP) 뚫어 준 후 서버랑 연결

public IP 확인
NCP 기준, 공인 IP를 하나 더 뚫어줬다.

 

2) 도메인 레코드도 뚫어 놓은 공인 IP로 변경

도메인 레코드 확인

 

3) ACG로 서버 IP 아닌 본인 작업 환경의 IP로 81포트 뚫어주기

ACG 규약 확인
80, 443은 기본 접속, SSH 접속을 위해 뚫어준 것임

 

4) docker-compose yml 생성 및 확인

1. 도커 내 npm 폴더 생성 후 해당 폴더로 전환

mkdir -p /docker_projects/nginx_proxy_manager_1
cd /docker_projects/nginx_proxy_manager_1

2. docker-compsose.yml 생성

vim docker-compose.yml
# docker-compose.yml 예시임
version: '3.8'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80' # 뚫어놓을 포트(기본)
      - '81:81' # 뚫어놓을 포트(NPM)
      - '443:443' # 뚫어놓을 포트(SSH)
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

 

3. docker-compsose.yml 확인

docker compose yml 설정 확인

 

4. 도커 컨테이너로 nginx 띄우기

## 예시 : 네트워크 프록시로 nginx 서비스 도커 컨테이너 띄우기
docker run -d -p 8021:80 --name svc_1 nginx # 서비스 1
docker run -d -p 8022:80 --name svc_2 nginx # 서비스 2

 

5. docker-compose up -d 로 컴포즈 실행

# 데몬으로 꺼져있어도 실행
docker compose up -d

# 컴포즈 다운 (실행 내리려면)
docker compose down

# docker compose up -d 안될 시 
docker-compose

 

6. docker ps -a로 확인

docker ps-a

docker ps -a 프로세스 확인

 

7. 관리 콘솔 접속

뚫어놓은 도메인:81 로 접속(안될 시 서버 공인 IP:81)

관리 콘솔 접속 확인

 

8. Proxy Host로 뚫을 도메인 추가

proxy host 도메인 추가 화면

* Proxy Hosts 추가 / edit 시 1. details -> https 로, 2. SSL은 ForceSSL로 설정

proxy host 추가 시 노드 추가 화면
ssl 발급 화면

 

 


 

반응형