【Streamlit】アプリのデプロイ:Streamlit Community Cloud

Streamlit
この記事は約5分で読めます。

こんにちは、JS2IIUです。
Streamlitで開発したアプリはStreamlit Community Cloudを使って簡単に、しかも無料で公開することができます。具体的な手順について説明します。今回もよろしくお願いします。

1. はじめに

Pythonで作ったStreamlitアプリを他の人にも見てもらいたい!
そんなときに便利なのが、Streamlit Community Cloudです。

この記事では、無料で簡単にStreamlitアプリを公開する方法を、わかりやすく解説します。
初めてWebアプリをデプロイする人でも安心して取り組めるように、ステップバイステップで説明していきます。

2. Streamlit Community Cloudとは?

Streamlit Community Cloud は、Streamlit公式が提供するアプリホスティングサービスです。GitHubと連携することで、誰でも簡単にアプリをWeb上に公開できます。

主な特徴

  • 💰 無料で使える(一部制限あり)
  • 🔄 GitHubと連携して自動デプロイ
  • 🖱️ GUI操作で初心者でも簡単
  • 🌐 URLを共有するだけで他人に見せられる

3. 事前準備

デプロイを始める前に、次の準備を済ませておきましょう。

✅ 必要なもの

項目内容
GitHubアカウントhttps://github.com に無料登録
StreamlitアプリのPythonコード例として簡単なアプリを後ほど紹介します
requirements.txtアプリで使うライブラリ一覧(pipが自動インストールします)

4. サンプルアプリの作成

まずは簡単なStreamlitアプリを作ってみましょう。

📄 ファイル1:app.py

Python
import streamlit as st
import pandas as pd
import numpy as np

# タイトル
st.title("売上データの可視化アプリ")

# データの作成
st.subheader("売上データの例(架空)")
months = ["1月", "2月", "3月", "4月", "5月", "6月"]
sales = np.random.randint(100, 500, size=len(months))

# DataFrameにまとめる
df = pd.DataFrame({
    "": months,
    "売上": sales
})

# データの表示
st.dataframe(df)

# 棒グラフの表示
st.subheader("月別売上の棒グラフ")
st.bar_chart(df.set_index(""))

# 折れ線グラフ(比較用)
st.subheader("月別売上の折れ線グラフ")
st.line_chart(df.set_index(""))

📄 ファイル2:requirements.txt

Plaintext
streamlit
pandas
numpy

このファイルはアプリで使用するPythonライブラリを記載します。

requirements.txtに関する詳細についてはこちらの記事を参考にしてください。

5. GitHubにアップロードする

Streamlit CloudはGitHubのリポジトリを元にアプリをデプロイします。以下の手順で、作成したファイルをGitHubにアップロードしましょう。

手順:

① GitHubで新しいリポジトリを作成

  1. https://github.com にアクセスし、ログイン
  2. 画面右上の「+」→「New repository」
  3. リポジトリ名を入力(例:hello-streamlit
  4. 「Create repository」ボタンをクリック

② ローカルからコードをコミット

  1. 作成したapp.pyrequirements.txtを用意
  2. GitHubリポジトリ画面で「Add file」→「Upload files」
  3. 両ファイルをドラッグ&ドロップしてアップロード
  4. 「Commit changes」ボタンで保存

6. Streamlit Community Cloudでデプロイ

準備が整ったら、いよいよデプロイ(公開)です。

手順:

① Streamlit Cloud にアクセス

  • 「Sign in with GitHub」をクリックしてログイン

② 「New app」をクリック

  • GitHubリポジトリの一覧が表示されます
  • 作成したリポジトリを選択(例:hello-streamlit

③ 必要な設定を入力

項目内容
Repositoryユーザー名/リポジトリ名(例:yourname/hello-streamlit
Branchmain(初期設定のままでOK)
File pathapp.py(メインのアプリファイル名)

④ 「Deploy」ボタンをクリック

7. 公開されたアプリを確認

Webブラウザで公開URLにアクセスすると、アプリが表示されます。

🟢 ちゃんと動作すれば成功です!

8. よくあるエラーと対処法

エラー原因解決方法
ModuleNotFoundErrorrequirements.txt に必要なライブラリが書かれていない使用しているライブラリをすべて記載する
アプリが起動しないFile path が間違っているapp.py のように正確なファイル名を指定する
ローディングが終わらないファイル名のミスや依存関係のエラーGitHubのコードを見直す・ログを確認する

9. アプリを更新したいときは?

アプリの内容を変更したい場合は、GitHub上のコードを更新すればOKです。

更新の流れ:

  1. app.py を修正して保存
  2. GitHub にコミット(アップロード)
  3. 数秒~1分程度でアプリに自動反映

🔄 自動で再デプロイされるので、特別な操作は不要です。

10. 注意点と制限

  • 無料プランでは1時間アクセスがないとスリープ状態になります(再アクセスで復帰)
  • 秘密情報(APIキーなど)をコードに直接書かないよう注意しましょう
  • .streamlit/secrets.toml を使えば安全に環境変数を使うことも可能です(上級者向け)

11. まとめ

Streamlit Community Cloudを使えば、コードを書くだけで誰でもWebアプリを公開できます。特別なサーバー設定も不要で、無料で始められるのが魅力です。

ぜひ、ポートフォリオや社内ツール、趣味のアプリなど、気軽に公開してみてください。

12. 参考リンク

最後まで読んでいただきありがとうございます。

コメント

タイトルとURLをコピーしました