원래 외부에서 외부망으로 내 로컬 PC에 호스팅하는 애플리케이션 (EX: 웹페이지)에 접속하려면, 내 public ip를 직접 노출하고 포트포워딩 설정 까지 해줘야한다.
그게 아니라면 클라우드 환경에 배포함으로써 이를 대신할 수 있지만
초기 구축하는 데 시간과 노력이 많이 들어가고 조금만 잘못해도 과금이 될 수 있다.
Ngrok은 이런 번거로움 없이 로컬 서버를 안전하게 https로 바꿔서 인터넷에 올려주는
터널링 툴이다.
사용법은 os나 실행/운영환경에 따라 다른데
Download
$ ngrok config add-authtoken <token>
ngrok.com
나의 경우 테스트를 위해서 한 것으로
호스트 PC의 OS인 Windows에서 설치를 진행했다.
설치방법
패키지 설치 툴 Chocolatey를 이용한 설치법
일단 먼저 Chocolatey가 없을 경우 아래 방법으로 설치
https://chocolatey.org/install
Installing Chocolatey
Chocolatey is software management automation for Windows that wraps installers, executables, zips, and scripts into compiled packages. Chocolatey integrates w/SCCM, Puppet, Chef, etc. Chocolatey is trusted by businesses to manage software deployments.
chocolatey.org
위 명령어 복사해서 관리자 권한으로 실행한 Powershell에 붙여넣기 하고 설치 진행
패지키 설치 툴이 설치되었다면 아래 명령어 Powershell에 그대로 붙여서 ngrok 설치
ngrok 설치 완료 되었다면 설치는 끝
사용방법
토큰 없이도 사용이 가능하나 세션의 제한이 있음.
토큰은 가입만 하면 제공하고 세션 접속시간이 무제한이며 무료.
해서 웬만해서는 가입 후 토큰 입력해서 사용하는 방법을 권고하고 이 포스트에도 해당 방법으로 설명할 것이다.
1. 무제한 세션을 위해
위 명령어 Powershell에 붙여넣기
2. Ephemeral Domain을 받아서 사용하기
휘발성 도메인이란 ngrok을 실행할 때 정해진 도메인이 없기 때문에 ngrok 측에서 알아서 무료 도메인을 매번 다르게 생성해주고 터널링해주는 것이다. 그러면 아래 명령어를 입력 후 생성된 도메인을 주소창에 복사해서 접속 할 수 있다.
ngrok http <IP:PORT>
OR
3. Static Domain을 받아서 사용하기 (권고)
정적 도메인이란 도메인이 계속 바뀌지 않고 유지된다는 뜻이고, 무료이기 때문에
도메인이 간결하거나 이쁘진 않지만 항상 같은 주소로 접속하면 된다는 장점이 있다.
엄청난 차이는 아니지만 더 좋다고 할 수 있다.
가입만 했으면 아래에서 받을 수 있다.
static domain을 받았다면
ngrok http <STATIC DOMAIN> <IP:PORT>
위 명령어처럼 사용할 수 있고 적은 정적 도메인으로 외부망 접속이 가능해진 것을 확인 할 수 있다.
이후 해당 도메인으로 접속하게 되면 위와 같은 화면을 보게 되는데
Visit Site를 통해 접속하면 된다.
무료 계정이기 때문에 서비스를 할 용도로는 당연히 부적합하고
테스트할 때 매우 유용할 것 같아서 소개해봤다.
한마디로 이제 내 호스트 PC가 서버 PC가 된 것
'개발자 전향 프로젝트' 카테고리의 다른 글
쿠버네티스 사용법 (무중단 배포:Rolling Update + 자동 스케일링:HPA) (0) | 2024.07.25 |
---|---|
Gitlab 과 Jenkins 연동하기 (0) | 2024.07.18 |
Docker GitLab 버전 업그레이드 + 프로젝트 백업과 복구 (0) | 2024.07.12 |
PAT(Personal Access Token)로 HTTPS에 호스팅 된 Gitlab CE 접속하기 + SourceTree 연동 (0) | 2024.07.11 |
Docker로 하는 Gitlab CI/CD HTTPS 호스팅 총 정리 (0) | 2024.07.10 |