ベースイメージ
すべてのテンプレートはソース環境から始まります。SDK は、必要な制御の度合いに応じて複数のエントリーポイントをサポートしています。- 標準的な Python ランタイムには
fromPythonImage(...)/from_python_image(...) - 標準的な Linux ベースには
fromUbuntuImage(...)/from_ubuntu_image(...)またはfromDebianImage(...)/from_debian_image(...) - 言語固有のベースには
fromNodeImage(...)/from_node_image(...)およびfromBunImage(...)/from_bun_image(...) - 任意のコンテナイメージには
fromImage(...)/from_image(...) - Dockerfile がすでに信頼できる情報源である場合は
fromDockerfile(...)/from_dockerfile(...) - プラットフォームのデフォルトベースから開始するには
fromBaseImage()/from_base_image() - 別のテンプレートの上にレイヤーを重ねるには
fromTemplate(...)/from_template(...)
fromPythonImage("3.12") と from_python_image("3.12") は、以下から開始するのと同等です。
Dockerfile
プライベートレジストリ
ベースイメージがプライベートレジストリにある場合は、テンプレートソースを定義するときに認証情報を渡します。 JS と Python の SDK は以下をサポートしています。- ユーザー名とパスワードによる汎用レジストリ認証情報
- AWS レジストリ認証情報
- GCP レジストリ認証情報
- Huawei Cloud レジストリ認証情報
テンプレートの定義
ビルダー API を使用すると、最終的な環境をコード内で直接構成できます。一般的な定義手順には以下が含まれます。- パッケージのインストールやプロビジョニングコマンドの実行には
runCmd(...)/run_cmd(...) - ローカルファイルを含めるには
copy(...) - ファイルシステムの構成には
makeDir(...)、remove(...)、rename(...)、およびmakeSymlink(...) - 環境変数には
setEnvs(...)/set_envs(...) - パッケージ設定には
pipInstall(...)、npmInstall(...)、bunInstall(...)、およびaptInstall(...) - コードをイメージに取り込むには
gitClone(...)/git_clone(...)
開始コマンドと準備完了コマンド
テンプレートがビルド結果内で長時間実行されるサービスを起動する必要がある場合は、開始コマンドを使用します。また、そのサービスが正常と見なされる条件を定義するには、準備完了コマンドを使用します。 これは、Web アプリ、API サーバー、バックグラウンドワーカー、およびサンドボックスの開始時にすでに初期化済みであるべきあらゆるテンプレートに役立ちます。setReadyCmd(...) / set_ready_cmd(...) を使用して、準備完了状態を個別に設定することもできます。