Container
ソース: src/cwsandbox/_types.py:1181Sandbox.run(containers=[...]) にリストを渡します。この形式は、単一コンテナー用の
キーワード引数 (container_image、
command/args、resources、mounted_files、secrets、
image_pull_credentials、environment_variables、
security_context、working_dir) と同時には使用できず、
SandboxDefaults からこれらのフィールドを継承しません。
コンテナーが 1 つの場合: primary は省略するか False にできます (その行がプライマリになります)。
複数の場合: ちょうど 1 つの行で primary=True を設定する必要があり、すべての行に
名前とリソースが必要です。GPU はプライマリでのみ使用できます。
属性
name(str | None) : DNS-1123 ラベル。コンテナーが 1 つの場合はオプションで、 複数のコンテナーを指定する場合は必須です。command(str | None) : エントリポイント。空または None の場合はイメージのエントリポイントを使用します。command を指定せずに args を設定することもできます。args(Sequence[str] | None) : コマンドまたはイメージのエントリポイントに渡す引数。environment_variables(Mapping[str, str] | None) : このコンテナーにのみ注入される環境変数。resources(ResourceOptions | dict[str, Any] | None) : このコンテナーの CPU/メモリ/GPU。複数のコンテナーを 指定する場合は必須です。mounted_files(Sequence[Mapping[str, Any]] | None) : 起動時にこのコンテナーに書き込まれるファイル。volume_mounts(Sequence[VolumeMount | Mapping[str, Any]] | None) : このコンテナーにマウントするサンドボックスレベルのボリューム。secrets(Sequence[Secret | Mapping[str, Any]] | None) : このコンテナーにのみ注入するシークレットストアのシークレット。working_dir(str | None) : コマンドの作業ディレクトリ。設定する場合は 絶対パスである必要があります。image_pull_credentials(ImagePullCredentials | Mapping[str, Any] | None) : プライベートレジストリからプルするための認証情報。primary(bool) : True の場合、このコンテナーがサンドボックスのライフサイクルを管理し、 exec/logs/files のデフォルトの対象になります。デフォルト:False。
ContainerStatus
ソース: src/cwsandbox/_sandbox.py:335status / returncode は、引き続きプライマリコンテナーが管理します。この行は、
その名前のコンテナーを kubelet から見た状態です。
属性
exit_code(int | None) : コンテナーが終端状態になった時点の終了コード。 コンテナーの実行中は None です。restart_count(int) : コンテナーが再起動した回数。デフォルト:0。
SecurityContext
ソース: src/cwsandbox/_types.py:993privileged、capabilities、run-as、seccomp は
サンドボックスの分離境界の内側で適用されます。
属性
run_as_user(int | None) : エントリポイントの UID。未設定の場合はイメージのユーザーを使用します。run_as_group(int | None) : エントリポイントの GID。未設定の場合はイメージのグループを使用します。privileged(bool | None) : 分離境界の内側で特権モードで実行します。allow_privilege_escalation(bool | None) : プロセスが親プロセスよりも多くの権限を 取得することを許可します。read_only_root_filesystem(bool | None) : コンテナーのルートファイルシステムを読み取り専用でマウントします。capabilities_add(Sequence[str] | None) : 追加する Linux capabilities (例:"SYS_PTRACE")。capabilities_drop(Sequence[str] | None) : 削除する Linux capabilities。seccomp_profile(str | None) :"RuntimeDefault"または"Unconfined"。
ImagePullCredentials
ソース: src/cwsandbox/_types.py:912field(str) : 構造化シークレットのフィールド (オプション)。デフォルト:''。