3. 「Streamlit Community Cloud」の登録とWebアプリの公開
最後は「Streamlit Community Cloud」に登録して、Webアプリの公開設定をしていくよ!
早速リンクへアクセスしよう
まずは「Join Community Cloud」をクリックしよう
すると、上のような画面が出るから「Continue to sign-in」をクリック
サインインする時に必要な連絡先は「Googleアカウント」「GitHubアカウント」「メールアドレス」のどれかなので、今回は既に用意できている「GitHubアカウント」を使おう
こんな感じでStreamlit Community CloudとGitHubを連携するための認証画面が出てくるから、「Authorize streamlit」ボタンをクリックしよう
クリックすると認証コードを入力する画面に切り替わって、GitHubを登録する時に使ったメールアドレスに認証コードが届くから入力しよう
コードの入力が完了すると、次はStreamlitとGitHubを連携するための認証画面が出てくるから、同じく「Authorize streamlit」ボタンをクリックしよう
2種類設定がいるんだね
クリックするとユーザー登録する画面が出てくるから、それぞれ入力して「Continue」をクリックしよう
「アプリの開発状況」はどれを選べば良いの??
今回は既に完成してるから「My app is ready to deploy.」を選択すれば良いよ!
おっけー!!
登録が完了するとメイン画面に移動するよ
ここで画面の真ん中に誘導が出てるけど、その前に左上のアイコンから「settings」をクリック
「Linked accounts」→「Source control」にある「Connect here →」をクリック
また「Authorize streamlit」ボタンが出てくるからクリックしよう!これでちゃんとGitHubとの連携ができるようになるよ
やっとこれで準備完了なんだね...汗
さて、ここからWebアプリの公開手順に入るよ!
メイン画面に戻ったら、画面右上の「Create app」をクリックしよう
すると、Webアプリを公開するためのプログラムをどの方法で管理するか選ぶ画面になるから、「GitHub」を選択しよう
選択後の画面では連携してるGitHubでどのリポジトリを使うのか聞かれるので、GitHubのリポジトリ画面を見ながら書き込んでいこう
なんか、文字入力しようとしたら選択肢が出てくるんだけど、そこから選んでも良いの??
それでも大丈夫だよ!!全部設定できて、赤文字で警告文が出なければ「Deploy」をクリックしよう!
あ!なんかお菓子が何回も切り替わる画面が出てきた!!
ここまで来たらもうすぐだよ!しばらく待っていると...
おおー!パソコンで動かしてた時と同じ画面が出た!!しかもちゃんと動いてくれる!!
おめでとう!これで無事Webサイトの公開が完了だよ!!
長い戦いだった...!!
最後に、今回の方法で公開したWebサイトはしばらくアクセスしていないとスリープモードに入ってしまうから、最初のアクセスの時は画面に出てくるスリープから起こすためのボタンを押して待たないといけないから気をつけてね
それと、無料枠では1つのサイトしか公開できない点にも注意してね
そうなんだ
じゃあ、もし公開中のサイトを消したい時はどうしたら良いの?
もし消したい場合はStreamlit Community Cloudのメイン画面にあるWebアプリリストの「3点メニュー」から「Delete」を押せば良いよ!
ついでにもう1つ、「環境変数」の設定について紹介するね
環境変数??ただの変数じゃなくて??
「環境変数」はプログラムに設定するんじゃなくてパソコンの中で事前に設定する情報のことで、外部のWebAPIを扱う場合に必要な「APIキー」や「パスワード」みたいな大事な情報を扱う時に利用するんだ
そういえば「準備編」でも注意しないといけないって言ってたね!!
もし「APIキー」や「パスワード」を利用する場合、外部に見えてしまわないように「環境変数」っていうのを設定するんだけど、Streamlitの場合はさっきの画像の「Settings」をクリックすることで進められるよ
クリックで出てきた画面で「secrets」を選択すると、文字を書き込むところが出てくるから、そこに「環境変数名 = APIキーなど」って形で入力すれば設定完了だよ
それだけで良いんだ!
じゃあ、プログラム側ではどうやって使うの??
プログラム側では使いたい箇所で「st.secrets[環境変数名]」ってすれば良いよ!!
パソコン内でも同じプログラムで処理するためには「secrets.toml」っていうファイルを作成したりしないといけないんだけど、それをGitHubにアップロードしても良くないから、まだ慣れていないうちは無理に使わないほうが良いかもね
確かに...!!もし必要な場合はちゃんと使い方を調べて慎重に使うようにする!!
そうだね、それが良いと思うよ!
ということで、改めてWebアプリの完成と公開おめでとう!!
