Kon's DX Lab - Case Study

Day 37|「やっと共有できた」──CloudもEXEも断念してたどり着いたバッチ式の社内展開

Published on 2025-05-08

🔬 Case Study Summary
Problem

(ここに課題を記述)

Result

(ここに具体的な成果を記述)


Tech & Process

(ここに採用技術とプロセスを記述) コードを詳しく見る »

こんにちは、こんです🦊

今日は、昨日の EXE 化に引き続き「Streamlit アプリの社内共有方法」を探っていました。

✅ 結論から言うと、Streamlit Cloud での共有は一度成功したものの、セキュリティ面から断念
代わりに、社内サーバー + .bat / .vbs によるローカルネットワーク内共有方式で、実用レベルの仕組みを完成させることができました!


🧪 今日の実験:Streamlitアプリの社内共有(Cloud断念 → ローカル展開)

① Streamlit Cloud は公開性が高すぎる

一見便利な Streamlit Cloud ですが、

  • secrets.toml や credentials.json を安全に保管できない

  • データが他者に閲覧される恐れあり(GitHub連携&パブリック公開)

という理由から、セキュリティ要件を満たすのが難しく、社内ツール用途では不向きと判断。


② バッチファイルでローカルサーバーを立ち上げて共有

LogiBridge/
├─ run_host.bat        ← ホスト用(LAN内で起動)
├─ run_host.vbs        ← ホスト専用の.vbs起動
├─ run.bat             ← クライアント用(指定ポートに接続)
├─ run.vbs             ← クライアント専用の.vbs起動
  • ポートの自動検出(空きポートを使用)

  • LAN内IPの取得 → ブラウザ起動

  • ホスト・クライアントを分離

複数拠点間でも運用できる柔軟な構成に。


💻 トラブルと対応

  • http://0.0.0.0:850X/ になる → PowerShell で LAN IP を正確取得

  • 日本語URL(例:/データ生成)は %E3%83%87... とエンコード

  • start に渡す文字列が引数と誤認される → powershell -Command の構文工夫

  • ポートが毎回変わってしまう → 今後、PID ↔ PORT 管理が課題


✅ 今日の成果と学び

  • EXE化よりバッチの方が現実的で柔軟

  • Streamlit Cloudはあくまで一時的なMVPやPoC向き

  • 共有こそがDXの要。配布より運用。


🔭 明日以降に進めたいこと

  • 認証設定(Google Sheets連携)の .vbs 自動起動補助

  • 初期設定完了時に /データ生成 を直接開く工夫

  • ポートとセッションの管理方式の整備

  • 他の Streamlit アプリのこの構成での再利用


🧠 今日のまとめ

「作ったはいいけど、どう共有するの?」

Streamlit のようなノーコード・ローコードツールでも、
最後に立ちはだかるのは“運用設計”と“環境整備”でした。

やっと土台が整った今、ここからが本当のスタート。

#100日チャレンジ #Day37 #Streamlit #DX設計 #バッチ共有 #社内ツール展開 #運用構築