Streamlit Community Cloudの初期設定

Apr 1, 2025·
金田 佑哉
金田 佑哉
· 1 min read

はじめに

Streamlitは、PythonコードからインタラクティブなWebアプリケーションを手軽に構築できるオープンソースのフレームワークです。特にデータ分析や機械学習の分野において、分析結果やモデルを可視化し、関係者と共有する手段として有用です。

データサイエンティストは、モデルの構築や分析には精通していても、フロントエンドやWebシステムの実装には不慣れなことが少なくありません。Streamlitはそうした背景を踏まえて設計されており、HTMLやJavaScriptの知識がなくても、Pythonだけで直感的なUIを実装できます。さらに、アプリの構築からデプロイまでの流れも非常にシンプルで、試作ツールや社内向けダッシュボードの作成にも適しています。

業務とは別に、個人で作成したアプリケーションについても、Streamlit Community Cloud を使えば誰でも簡単に無料でインターネット上に公開することができ、自作のアイデアをすばやく世界に発信することが可能です。 そんなお遊びのアプリを作ったので、公開までの流れを記しておきます。

Streamlit Community Cloudでのアプリの公開までの流れ

公式ページでも記載されていますが、下記の流れを踏むだけで公開できます。

  1. GithubでSign up(Sign in)
  2. リポジトリ、ブランチ、ファイルを選択する
  3. 「デプロイ」をクリック

より詳細のチュートリアルはこちらにあります。

Streamlit Community Cloudのアカウントを作成

下記のページにアクセスし、アカウントを作成します。

https://share.streamlit.io/

Sign inの画面になりますが、Sign upのボタンもあるので、Sign upを通してアカウントを作成します。

いくつかのSign upの方法がありますが、どのみちGitHubのアカウントと連携するので、GitHubでSign upしてしまうことがスムーズで便利かと思います。

遷移先でStreamlitのアプリのコードがあるリポジトリを所有しているGitHubアカウントとAuthorize streamiltをします。あらかじめ指定している認証を問われるので、画面に従い紐付けを完了させてください。

適切にユーザー情報を入力してSet upを完了させましょう

アカウントの作成は完了です。

アプリのデプロイ

あらかじめStreamlitの動くコードを用意しておき、リポジトリにpushしておきます。 今回デプロイするコードはこちらになります。リポジトリはpublicリポジトリに設定しておいてください。おそらくpublicでないとStreamlit Community Cloudに公開できないかと思います(実験はしていない)。 Streamlitのコードの説明などは省略します。

前ステップで正しくSign upが完了しSign inが完了していると、こちらのリンクへアクセスするとご自身のアカウント画面に飛ぶと思います。

めちゃくちゃ主張強く「Create your first app now」と誘導されるので、「Create app」をクリックしデプロイに進んでみます。

今回はGitHubにあるコードを連携し、デプロイするので「Deploy a public app from GitHub」を選択します。

適切に必要な項目を入力していきます。GitHubと連携しているので、基本的にプルダウンメニューでリポジトリやファイルを選択することができます(便利)。 また、Advanced settingsからpythonのバージョンなども設定できます。 適切に項目を埋めたらDeployで終了です。

適切にデプロイできました👏

補足

Streamlit Community Cloudの仕様

しばらくの時間アクセスがない場合に、Streamlit Community Cloudにデプロイしたアプリはスリープ状態になります。 正確に把握していないのですが、おそらく1日程度誰もアクセスしないとスリープになる感じがします(ドキュメントのどこかに載っている気はする)。

スリープ状態になるとアクセスした際に、上記のような画面になります。とはいえ、アクセスした方が「Yes, get this app back up!」ボタンを押していただければ、数秒で再起動します。

閲覧制限

追加設定をすることで、限定公開もできるようです。

試していないですが、招待したメールアドレスの人にだけ公開ができるんすかね。 当然のことですが、Streamlit Community Cloudにホスティングされているので、データなどは先方にも共有されるので、機密情報などはStreamlit Community Cloudを用いてホスティングしないよう気をつけてください。

お疲れ様でした。