Apache の特定ディレクトリアクセスがあった際、デーモン化した Streamlit で応答する
以前に以下のメモを書きました。
今回は Nginx では無く、Apache 2.4 で特定ディレクトリへアクセスがあった場合のみリバースプロキシ動作をさせ、デーモン化した Streamlit アプリケーションで応答する設定例をメモしておきます。 尚、mise と uv は事前にインストールされている前提とします。
以前に以下のメモを書きました。
今回は Nginx では無く、Apache 2.4 で特定ディレクトリへアクセスがあった場合のみリバースプロキシ動作をさせ、デーモン化した Streamlit アプリケーションで応答する設定例をメモしておきます。 尚、mise と uv は事前にインストールされている前提とします。
Streamlit ではプログラムからクエリパラメータを取得することも出来ます。 今回は以下を使って「クエリパラメータが指定された場合はボタンの名前を変更する」サンプルをメモしておきます。
Cisco CML には Tools Menu の中に Sample Labs
という機能があります。 予め所定のディレクトリにワークスペースの構成ファイル (YAML) を配置しておくことで Sample Labs
の一覧画面に表示され、それを Import
するだけですぐにワークスペースを用意出来ます。 また、CML 自体に「サンプルラボをロードする」という API は実装されています。
CML の操作を自動化するには cmlutils や virl2-client を利用することが出来ます。 ですが、Sample Labs
の機能は cmlutils や virl2-client には実装されていないようです。 その為、今回は直接、Python から Sample Labs
機能を利用する REST API を呼び出すサンプルスクリプトをメモしておきます。
先日、Streamlit-Authenticator でログイン認証フォームを作る というメモを書きました。 Streamlit 作成した Web アプリケーションを本格的に利用したい場合はデーモン化しなくなります。 そこで今回は Systemd を使って Streamlit アプリケーションをデーモン化する手順をメモしておきます。
Streamlit-Authenticator を使うと Streamlit で作成したアプリケーションへログインフォームや認証の機能を追加出来ます。 今回は Streamlit-Authenticator を使い、ログインフォーム機能を持った簡単なアプリケーションのサンプルを動作させるまでの手順をメモしておきます。
virl2_client を使って CML 上のノードを全て停止するサンプルスクリプトをメモしておきます。
Cisco CML のバージョン情報を取得するスクリプトサンプルをメモしておきます。
Cisco CML 上のノード一覧を表示するスクリプトサンプルをメモしておきます。
Python から BOX へアクセスする方法は以下などが考えられます。
No. | 方法 | GitHub ページ | 補足 |
---|---|---|---|
1 | REST API を直接、呼び出す | - | 抽象化されていない為、利用がやや大変 |
2 | Pythoh SDK を利用する | Box Python SDK | サポート終了予定 |
3 | Python SDK (Generated) を利用する | Box Python SDK GENERATED | 今後の主流? |
2 番目の Python SDK は Python SDK (公式サポート終了) のインストール ページで以下のように記載されており、サポート終了予定です。 今後、積極的に利用するのは躊躇われます。
Python SDKは、現在メンテナンスモードであり、まもなく公式サポートが終了する予定です。つまり、実装されるのは重要なセキュリティ更新プログラムとバグ修正のみになります。自動生成されたPython SDKを使用することをお勧めします。
3 番目の Python SDK (Generated) は Python SDK (Generated) のインストール ページで以下のように記載されています。
Pythonプロジェクトでは、自動生成されたBox Python SDKを使用してBox APIを呼び出すことができます。この次世代のSDKには、開発者エクスペリエンスを向上させ、Boxコンテンツクラウドとの統合を効率化することを目的とした新機能が備わっています。
今回は Python SDK (Generated) を利用し、Python から Box へ JWT 認証ログインするサンプルスクリプトをメモしておきます。