Colaboratory (Colab)은 구글에서 제공하는 클라우드 기반의 Jupyter Notebook 환경입니다. Colab을 이용하면 브라우저에서 Python 코드를 작성하고 실행할 수 있습니다. 이번 가이드에서는 Colab을 이용하여 웹 서비스를 구축하고 외부에서 접근할 수 있도록 IP를 노출하는 방법을 알아보겠습니다.
1. Colab에서 Flask 웹 어플리케이션 작성하기
Flask는 Python으로 웹 어플리케이션을 작성하기 위한 마이크로 웹 프레임워크입니다. 먼저 Colab에서 Flask를 설치한 후 웹 어플리케이션을 작성해보겠습니다.
!pip install flask
위 명령어를 실행하여 Flask를 설치합니다. 이제 아래 코드를 실행하여 간단한 웹 어플리케이션을 작성해보겠습니다.
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, World!'
if __name__ == '__main__':
app.run()
위 코드는 Flask로 작성한 간단한 웹 어플리케이션입니다. 루트 경로('/')로 접근하면 'Hello, World!'라는 메시지가 출력됩니다.
2. Colab에서 ngrok을 이용하여 IP 노출하기
ngrok은 로컬(localhost) 서버를 외부에서 접근할 수 있도록 해주는 툴입니다. Colab에서 ngrok을 이용하면 간단하게 로컬 서버를 외부에서 접근할 수 있습니다.
먼저 ngrok을 다운로드합니다.
!wget <https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip>
!unzip ngrok-stable-linux-amd64.zip
다음으로 ngrok을 실행합니다.
get_ipython().system_raw('./ngrok http 5000 &')
위 명령어는 5000번 포트를 ngrok에서 제공하는 무료 도메인으로 포워딩합니다.
마지막으로 아래 코드를 실행하여 ngrok의 도메인을 확인합니다.
!curl -s <http://localhost:4040/api/tunnels> | python3 -c \\\\
"import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"
위 명령어를 실행하면 ngrok에서 제공하는 도메인을 확인할 수 있습니다. 해당 도메인을 브라우저에서 접속하면 Flask로 작성한 웹 어플리케이션에 접근할 수 있습니다.
마무리
이번 가이드에서는 Colab을 이용하여 Flask로 간단한 웹 어플리케이션을 작성하고 ngrok을 이용하여 외부에서 접근할 수 있도록 IP를 노출하는 방법을 알아보았습니다. Colab과 ngrok을 이용하면 무료로 웹 서비스를 구축할 수 있으며, 이를 이용하여 다양한 프로젝트를 진행해보시기 바랍니다.
예제
Public URL: http://3887-34-143-212-138.ngrok.io
'IT' 카테고리의 다른 글
클라우드 컴퓨팅 표준 개발 현황 (0) | 2013.02.13 |
---|
댓글