Closed3
Streamlit Community CloudにRyeのアプリをデプロイする

PythonのイケてるパッケージマネージャRyeで管理しているアプリをStreamlit製アプリを簡単にデプロイできるプラットフォームのStreamlit Community Cloudにデプロイしようとすると詰まったのでメモ
Community Cloudへのデプロイ方法: Deploy your app - Streamlit Docs
現時点でのCommunity Cloudに関する注意点は以下の通り
- Python 3.8 ~ 3.11しか対応していない
- Ryeに対応していない: App dependencies - Streamlit Docs

手順
まず普通にryeを初期化する。
rye init
デフォルトだとPythonバージョンが3.12になるので適当なバージョンに固定する。
rye pin 3.11
Community Cloudはrequirements.txt
があるとそれを使って依存を解決してくれる。
Ryeのロックファイルであるrequirements.lock
はrequirements.txt
と互換性がある形式なので、シンボリックリンクを貼る。
Linuxの場合
ln -s ./requirements.lock requirements.txt
Windows (PowerShell) の場合
New-Item -ItemType SymbolicLink -Path requirements.txt -Target ./requirements.lock

ryeの後継であるuvには対応している
このスクラップは2024/03/23にクローズされました