▤ 動画容量ナビ

動画の容量と保存 · 参考資料確認日 2026年9月22日

GitHub Container Registryの10 GB layerと10分timeout

image全体が10 GB未満でも、1つのlayerが大きい、またはuploadに時間がかかるとpushは失敗し得ます。10 GBをtotal image maximumとして扱わないことが出発点です。

size limitは各layer 10 GB

GitHub Container Registryのsize limitは各layerにつき10 GBです。現在の公式資料はimage全体に対する10 GB maximumを示していないため、複数layerの合計へこの値をそのまま適用しません。

Dockerfileの1 stepが巨大なarchiveやbuild artifactを追加すると、その差分が大きなlayerになります。最終imageの表示sizeだけでなく、push対象layerごとのsizeを確認してください。

uploadは10分でtimeoutする

Container registryのupload timeoutは10 minutesです。layerが10 GB以内でも、回線速度や再送によって1 layerのuploadが10分を超えればsizeとは別の理由で失敗します。

layerを小さく分けることはtimeout回避にも役立ちますが、意味のないlayer増加はimage管理を複雑にします。build context、不要file、cache、multi-stage buildを見直し、必要な内容だけを残します。

失敗したlayerのsizeと時間を確認する

push logから失敗したdigestを特定し、そのlayerが10 GB以内か、upload開始から10分以内かを確認します。大きすぎる場合はarchiveの外部保存やmulti-stage buildを検討し、不要なartifactをimageから除外してください。

確認後に同じlayerを再pushし、sizeと所要時間を記録します。image全体を10 GB未満へ削るだけでは、per-layerまたはtimeoutの問題を直せない場合があります。

参考資料

  • GitHub Container registry

    https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry

    確認日:2026-09-22