ngrok 란

2024-03-21

  • CS
  • BE

NGROK은 로컬 개발 환경을 인터넷에 임시로 공개하는 도구입니다. 개발자가 로컬에서 개발 중인 웹사이트나 애플리케이션을 외부 네트워크에서 접근 가능하게 해주며, 이를 통해 다양한 테스트와 데모를 용이하게 할 수 있습니다. NGROK을 사용하면 복잡한 네트워크 설정 없이도 손쉽게 로컬 서버를 외부에서 접근 가능한 URL로 매핑할 수 있습니다.

NGROK의 주요 기능

  • 로컬 서버 공개: 로컬에서 실행 중인 웹 서버를 외부에서 접근할 수 있는 공개 URL로 노출시킵니다. 이 URL을 통해 외부에서 로컬 서버에 접속할 수 있습니다.
  • 터널링: NGROK은 HTTP, HTTPS, TCP 터널을 지원합니다. 이를 통해 웹사이트, API 서버, 데이터베이스 등 다양한 서비스를 외부에 공개할 수 있습니다.
  • 보안: HTTPS를 통한 암호화로 데이터 전송 시 보안을 강화합니다. 또한, 기본적으로 생성되는 URL은 랜덤하고 예측하기 어려운 문자열로 구성되어 있어, 일정 수준의 보안성을 제공합니다.
  • 실시간 인스펙션: NGROK 대시보드를 통해 터널을 통해 전송되는 HTTP 요청과 응답을 실시간으로 확인할 수 있습니다. 이 기능은 디버깅 과정에서 매우 유용합니다.

NGROK 사용 예시

  1. 웹 개발: 로컬에서 개발 중인 웹사이트를 외부의 클라이언트나 이해관계자에게 실시간으로 보여주고 피드백을 받을 수 있습니다.
  2. API 테스팅: 모바일 앱 개발 시 로컬에서 실행 중인 API 서버를 모바일 장치에서 직접 호출하여 테스트할 수 있습니다.
  3. 웹훅 디버깅: 외부 서비스(예: GitHub, Slack)에서 발생하는 웹훅을 로컬에서 직접 받아 처리하고 디버깅할 수 있습니다.

사용 방법

NGROK 사용을 위해서는 먼저 NGROK 웹사이트에서 계정을 생성하고, NGROK 클라이언트를 다운로드하여 설치해야 합니다. 설치 후, 터미널이나 명령 프롬프트에서 NGROK 명령을 실행하여 로컬 서버를 외부에 공개할 수 있습니다. 예를 들어, 로컬에서 8080 포트로 실행 중인 웹 서버를 공개하려면 다음과 같은 명령을 사용합니다:

ngrok http 8080

이 명령을 실행하면 NGROK이 8080 포트에 바인딩된 로컬 서버를 위한 공개 URL을 생성하고, 이 URL을 통해 외부에서 로컬 서버에 접속할 수 있게 됩니다.

NGROK은 개발과 테스트 단계에서 매우 유용한 도구이며, 이를 통해 개발자는 네트워크 환경의 제약 없이 다양한 서비스를 더 빠르고 효율적으로 검증할 수 있습니다.

Restful한 A...

AWS Soluti...