> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qoder.com/llms.txt
> Use this file to discover all available pages before exploring further.

# コンテナリファレンス

> コンテナタイプ、ネットワークポリシー、プリインストール パッケージのリファレンス。

Agent Session は隔離されたサンドボックスコンテナ上で実行されます。本ドキュメントでは、コンテナの OS、プリインストールツール、リソース制限などの参照情報を一覧します。

## オペレーティングシステム

| 項目          | 値                                                  |
| ----------- | -------------------------------------------------- |
| ディストリビューション | Ubuntu 22.04 LTS (Jammy)                           |
| アーキテクチャ     | x86\_64 (amd64)                                    |
| カーネル        | Linux 5.10.134（LIFSEA コンテナエンジン、Linux 5.10 LTS ベース） |

## プリインストールツール

### システムツール

| ツール         | バージョン        | 説明          |
| ----------- | ------------ | ----------- |
| git         | 2.34+        | バージョン管理     |
| curl        | 7.81+        | HTTP クライアント |
| wget        | 1.21+        | ファイルダウンロード  |
| jq          | 1.6+         | JSON 処理     |
| vim         | 8.2+         | テキストエディタ    |
| unzip / tar | システム標準       | 圧縮/解凍       |
| ssh         | OpenSSH 8.9+ | SSH クライアント  |
| make        | 4.3+         | ビルドツール      |

### 言語ランタイム

| 言語      | バージョン    | パッケージマネージャ |
| ------- | -------- | ---------- |
| Python  | 3.12.x   | pip 24+    |
| Node.js | 20.x LTS | npm 10+    |
| Go      | 1.22.x   | go mod     |

### パッケージ管理

| ツール | 説明            |
| --- | ------------- |
| apt | システムパッケージ管理   |
| pip | Python パッケージ  |
| npm | Node.js パッケージ |

## 作業ディレクトリ

```
/app
```

Agent のデフォルト cwd は `/app`。`$HOME` は `/data`（別ディレクトリ）を指し、`~/` は cwd 配下に展開されません。アップロードファイルのマウントパスは [Files](/ja/cloud-agents/files) ドキュメントを参照。

## 追加ソフトウェアのインストール

Environment 構成の `packages` フィールドで追加依存関係をインストールします。

```json theme={null}
{
  "config": {
    "packages": {
      "apt": ["postgresql-client", "redis-tools", "ffmpeg"]
    }
  }
}
```

コンテナ起動時、`apt`/`pip`/`npm` キーがそれぞれシステムパッケージ、Python パッケージ、Node.js パッケージをインストールします。

<Note>
  Agent の system prompt 内で、必要に応じて追加の依存関係をインストールするよう Agent に指示することもできます。
</Note>

## ネットワーク構成

ネットワークアクセス能力は Environment の `config.networking` フィールドで制御します（オブジェクト形式必須）。

| タイプ             | 説明                                  |
| --------------- | ----------------------------------- |
| `unrestricted`  | コンテナがパブリックネットワークにアクセス可能 (デフォルト)     |
| `limited`       | 既知の安全なパブリックサービスとパッケージマネージャーのみアクセス可能 |
| `allowed_hosts` | 指定したホスト名のみアクセス可能                    |

構成例:

```json theme={null}
{
  "config": {
    "networking": {
      "type": "allowed_hosts",
      "allowed_hosts": [
        "api.github.com",
        "registry.npmjs.org"
      ]
    }
  }
}
```

詳細なフィールド説明は [クラウド環境 - ネットワークポリシー](/ja/cloud-agents/environments#ネットワークポリシー) を参照してください。

## リソース制限

| リソース | デフォルト制限                              | 説明              |
| ---- | ------------------------------------ | --------------- |
| CPU  | 4 vCPU                               | 割り当てられるプロセッサコア数 |
| メモリ  | 8 GB                                 | 利用可能な RAM       |
| ディスク | 25 GB（overlay ファイルシステム、約 18 GB 利用可能） | 作業領域のストレージ      |
| 実行時間 | 30 分                                 | 単一 Turn の最大実行時間 |

<Note>
  メモリやディスクの制限を超えると、プロセスが OOM Kill されるか書き込みが失敗します。system prompt で Agent にリソース使用量への注意を促してください。
</Note>

## ファイルの永続化

* 同一 Session 内では、ファイルは Turn 間で保持されます
* **コンテナの一時ストレージの保持期間は 24 時間のみです。** 24 時間以上非アクティブな Session では、コンテナディスクが回収される可能性があり、ディスク上のファイルの保持は保証されません
* ディスク回収後も Session 自体は引き続き利用可能です——プラットフォームはオンデマンドでコンテナ環境を再初期化しますが、以前ディスク上で生成されたファイル（クローンしたリポジトリ、生成した中間成果物など）は失われます
* Session のライフサイクルが終了すると、コンテナとそのファイルは即座に破棄されます
* 長期保存が必要なファイルは Files API でプラットフォームストレージへアップロードします

<Warning>
  ディスク回収は Session の終了を意味しません。ワークフローが日をまたいでディスク上の中間ファイルに依存する場合は、各ターンの終了時に重要な成果物を Files API にアップロードし、再開時に再マウントしてください。
</Warning>

## 実行ユーザー

コンテナ内のすべてのコマンドは **root** ユーザーとして実行されます。`whoami` は `root` を返しますが、`USER` 環境変数は注入されていません（空文字列）。

Agent はシステムパッケージのインストールや任意のシステムディレクトリへの書き込みを `sudo` なしで直接実行できます。制限が必要な場合は、Agent のシステムプロンプトで明示してください。

## 環境変数

コンテナにプリセットされる環境変数:

| 変数    | 値            | 説明                                                       |
| ----- | ------------ | -------------------------------------------------------- |
| HOME  | /data        | ユーザーホームディレクトリ（`~/` はここに展開され、cwd `/app` とは異なります）          |
| USER  | （未設定、空文字列）   | `USER` 環境変数は注入されていません。実際の身元は `whoami` で取得でき、`root` を返します |
| SHELL | /bin/bash    | デフォルトシェル                                                 |
| LANG  | en\_US.UTF-8 | ロケール設定                                                   |

Vault 内の認証情報は環境変数として注入されます (Session 作成時に Vault を関連付ける必要があります)。

## 次のステップ

<CardGroup cols={2}>
  <Card title="クラウド環境" icon="server" href="/ja/cloud-agents/environments">
    `packages` と `networking` を含む Environment を作成する。
  </Card>

  <Card title="ファイルの添付とダウンロード" icon="paperclip" href="/ja/cloud-agents/files">
    コンテナにファイルをアタッチし、生成物を取得する。
  </Card>

  <Card title="Vaults" icon="key" href="/ja/cloud-agents/vaults">
    認証情報を環境変数としてコンテナに注入する。
  </Card>

  <Card title="Session の開始" icon="play" href="/ja/cloud-agents/sessions">
    コンテナを使って Agent ターンを実行する。
  </Card>
</CardGroup>
