Ngrok
앱을 개발할 때, 로컬이 아닌, 공개된 서버로 열어야 할 때가 있다.
이럴때 이거 쓰면 좋다.
1. Ngrok 다운로드 및 설치
- Ngrok 다운로드:
- 웹 브라우저를 열고 Ngrok 공식 사이트로 이동한다.
- 페이지 상단의 “Download” 버튼을 클릭하여, 사용 중인 운영 체제에 맞는 Ngrok 버전을 다운로드 한다.
- Ngrok 설치:
- 다운로드한 압축 파일을 적절한 위치(예:
C:\ngrok
폴더)에 압축 해제한다. ngrok.exe
파일이C:\ngrok
폴더에 있어야 한다.
- 다운로드한 압축 파일을 적절한 위치(예:
- Ngrok 실행:
ngrok.exe
가 있는 폴더로 이동한다.ngrok
명령을 터미널에서 사용하려면,ngrok.exe
의 경로를PATH
환경 변수에 추가하거나, 명령을 실행할 때마다 폴더로 이동해서 실행할 수 있다.
2. Ngrok 사용 방법
- Ngrok 실행:
- 터미널(cmd) 또는 PowerShell을 연다.
- Ngrok을 설치한 폴더(
C:\ngrok
)로 이동 한다.cd C:\ngrok
- Ngrok을 실행하려면 다음 명령을 입력 한다:
ngrok http 5000
- 여기서
5000
은 로컬에서 Flask 서버를 실행 중인 포트 번호 이다. Flask 서버를 다른 포트(예: 3000)에서 실행 중이라면, 포트 번호를3000
으로 변경할 수 있다:ngrok http 3000
- Ngrok 출력 이해:
- Ngrok을 실행하면 터미널에 새로운 정보가 표시됩니다. 여기서 중요한 부분은 다음과 같다:
- Forwarding:
http://<ngrok-subdomain>.ngrok.io -> http://localhost:5000
- 이 URL (
http://<ngrok-subdomain>.ngrok.io
)이 외부에서 접근할 수 있는 주소 이다. 모바일 앱에서 이 URL을 사용하여 로컬에서 실행 중인 서버에 접근할 수 있다.
- Forwarding:
- Ngrok을 실행하면 터미널에 새로운 정보가 표시됩니다. 여기서 중요한 부분은 다음과 같다:
- Ngrok을 통한 서버 접근:
- 이제 Ngrok이 제공한 URL을 복사하여, 모바일 앱의 서버 주소로 설정 한다. 예를 들어, Flask 서버가 로컬에서
5000
포트에서 실행 중이라면, Ngrok이 제공한 URL을 통해 외부에서 Flask 서버에 접근할 수 있다.
- 이제 Ngrok이 제공한 URL을 복사하여, 모바일 앱의 서버 주소로 설정 한다. 예를 들어, Flask 서버가 로컬에서
3. 추가 팁
- Ngrok 로그인: Ngrok의 공식 사이트에서 계정을 생성하고 로그인하면, 개인 토큰을 받아 Ngrok의 기능을 더 잘 활용할 수 있다. 예를 들어, 더 긴 시간 동안 URL이 유지되도록 설정할 수 있다.
- 서버 포트 변경: 서버를
3000
포트에서 실행 중이라면, Ngrok 명령에서5000
대신3000
을 사용합 한다:ngrok http 3000
이 과정을 통해 Ngrok을 설치하고, 로컬 서버를 외부에서 접근 가능하게 만들 수 있다. Ngrok의 URL을 앱의 서버 주소로 설정하면, 외부에서 모바일 앱이 로컬 서버와 통신할 수 있다.
2.2. Ngrok 사용 시 주의사항
- Ngrok을 종료하면 해당 URL도 사라지며, 새로 실행할 때마다 새로운 URL이 생성된다. 따라서 개발 및 테스트 용도로 사용하기에 적합하다.
- 클라우드 서버나 VPS에 서버를 배포하는 것은 보다 영구적이고 신뢰할 수 있는 솔루션 이다.
이제 Ngrok을 사용하여 로컬 서버를 외부에서 접근할 수 있게 설정할 수 있다. 필요에 따라 포트 번호를 변경하고, 모바일 앱과 서버 간의 통신을 테스트할 수 있다.