JavaScriptを有効にしてください

Google ColabでFlask環境を構築し、Webアプリケーションを公開する方法

 ·  ☕ 2 分で読めます

Google ColabでFlask環境を構築し、Webアプリケーションを公開する方法

Google Colab上でFlaskアプリケーションを構築し、serve_kernel_port_as_windowserve_kernel_port_as_iframe 関数を使ってアプリケーションを公開する方法を紹介します。

Flaskのインストール

まずはFlaskをインストールします。FlaskはPythonで書かれた軽量なWebアプリケーションフレームワークで、シンプルながら強力な機能を提供します。

1
!pip install flask

Flaskアプリケーションの定義

Flaskを使って基本的なWebアプリケーションを定義します。以下のコードは、ルートURL(/)にアクセスした際に “Hello, World!” と表示するアプリケーションです。

1
2
3
4
5
6
from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

アプリケーションの起動

アプリケーションを起動するには、特定のポートでFlaskアプリケーションを実行します。Colabでは、アプリケーションを別のスレッドで起動するのが一般的です。

1
2
3
4
5
6
7
8
9

# 公開ポート
PROT = 7860

if __name__ == '__main__':
    from threading import Thread

    thread = Thread(target=lambda: app.run(port=PROT, debug=True, use_reloader=False))
    thread.start()

アプリケーションの公開

Colabでは、serve_kernel_port_as_windowserve_kernel_port_as_iframe 関数を使って、特定のポートで実行されているアプリケーションを公開できます。

  • serve_kernel_port_as_window:
    • 新しいブラウザウィンドウ(またはタブ)でアプリケーションを表示します。主に、ユーザーが直接インタラクションを必要とするアプリケーションに適しています。
1
2
from google.colab import output
output.serve_kernel_port_as_window(PROT)
  • serve_kernel_port_as_iframe:
    • 現在のColabノートブックのiframe内でアプリケーションを表示します。ノートブック内で直接結果を表示したい場合に便利です。
1
2
from google.colab import output
output.serve_kernel_port_as_iframe(PROT)

注意点

  • serve_kernel_port_as_iframeserve_kernel_port_as_window を同時に使用することも可能ですが、通常はどちらか一方で十分です。
  • Colab環境でポートを公開する際は、セキュリティ面での懸念を考慮し、公開する内容に注意してください。

この方法を利用すれば、Google Colabを使って手軽にFlaskアプリケーションの開発とテストを行い、その結果をリアルタイムで確認するができます。開発プロセスの迅速化や、教育目的でのデモンストレーションにも非常に有効です。

共有

こぴぺたん
著者
こぴぺたん
Copy & Paste Engineer