Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ python3 .github/scripts/proper_term_check.py # 固有の語の検査
| --- | --- | --- |
| `containers/base/entrypoint.sh` などイメージに入るファイルを変えた | `devbase up` だけでは反映されない | base を建て直してから確かめる |
| base を建てて比べる | base は 1 本で数 GB ある。並べて残すとディスクが埋まり Docker が止まる | 建てる前に `docker system df` を見る。作業用のタグは記録を書いたら消す |
| 確かめのためにボリュームを作る・写す | macOS の Docker Desktop では、VM の中の `df` はホストの空きを表さない。ボリュームを丸ごと写すとホストの `Docker.raw` が伸びてディスクが埋まり、Docker Desktop が止まって動いていたコンテナがすべて落ちる(m8a で #368 の受け入れ条件 9 のためにホームのボリュームを丸ごと写し、12 のコンテナと裏の検査が落ちた) | 写す前にホストの `df -h /System/Volumes/Data` を見る。写すのは確かめに要るファイルだけにする(CLI の設定なら数百 MB で足りた)。落ちたコンテナは `devbase up` で作り直さず、`docker start` と `devbase project post-start <名前>` で戻す |
| イメージの大きさを受け入れ条件に書く | `docker images` の `.Size` は、containerd のイメージストア(Docker Desktop)では圧縮後、classic のストアでは展開後に近い値を出す。同じ条件が端末で二通りに読める(#402 は 611MB と 1.29GB に分かれた) | 用語集の「展開後の大きさ」(`du -sbx /`)で書き、測った端末とストアを記録に残す |
| ビルドの前後でイメージが変わっていないことを確かめる | containerd のイメージストア(Docker Desktop)では、キャッシュだけで建っても `docker images` の ID が変わることがある(m7e のリリース後テストで `devbase-base:latest` が c6b3549b950d → 7c621a66378d、作成時刻は同じ)。「ID は変わらない」と先に書いて直した。前の ID は手元から消え、比べ直せなかった | 建てる前に `docker image inspect` の `Id` と `Created` を控える。変わっていないことは `Created` で示し、ID が変わったら変わったと書く |
| 通常の経路(`build`・`up` など)に `docker compose` の呼び出しを足す | 足した呼び出しが元の経路より多くの前提を持つと、これまで通っていた利用者の環境で止まる(#415 の `docker compose config` はサービスの `env_file` を読み、`.env` をまだ作っていない初回のビルドで失敗する形だった。直しに使った `--no-env-resolution` は Compose v2.35 より前では未知のオプション。どちらも設計を通り、スプリント m7e の cross-review で major になった) | 設計で、足す呼び出しが読むファイルと要る Compose の版を、元の経路と並べて書く。版で入ったオプションは、退けられたときの扱いを決める |
Expand Down
Loading