一時ストレージ制限を超えた場合のビルドの失敗
ビルドを作成して実行すると、ビルドが正常に完了せずに、一時ストレージの使用量が制限を超えたというメッセージを受け取ります。
一時ストレージの制限を超えたというメッセージを受け取った場合は、ビルド・サイズが小さすぎます。
ビルドの実行時には、ソース・コードをロードする必要があります。 Docker ビルドを使用する場合には、基本イメージをダウンロードし、ターゲット・イメージをビルドするために必要なステップを実行する必要があります。 ビルド実行には、こうしたステップのためのディスク・スペースが必要です。このディスク・スペースはビルド実行が終了すると、解放されます。 このディスク・スペースは一時 ローカル・ストレージと呼ばれます。 ビルドに small
、 medium
、
large
、 xlarge
、または xxlarge
のいずれのサイズを選択するかに応じて、ビルド実行に使用できる一時ストレージの最大量が決まります。 ビルドのサイズについて詳しくは、ビルドのサイズの決定を参照してください。 一時ストレージの最大量に達すると、ビルド実行は次のようなエラー・メッセージで停止します。
エラー・メッセージの例
Summary: Failed to run build due to exceeded ephemeral storage
Reason: Pod ephemeral local storage usage exceeds the total limit of containers <AMOUNT>.
Summary: Failed to run build due to exceeded ephemeral storage
Reason: Container <STEP_NAME> exceeded its local ephemeral storage limit <AMOUNT>.
以下のいずれかの解決策を試してください。
コンソールと CLI のどちらでビルドを実行していようと、ビルドの問題のトラブルシューティングには CLI を使用してください。
ibmcloud ce buildrun get --name BUILDRUN_NAME
コマンドを実行して、ビルド実行の詳細を表示します。- コマンド出力の
Reason
を確認します。
この問題を解決するには、ビルドにより大きなサイズを使用します。
ビルドのサイズを大きくするということは、ビルド実行に割り当てられるメモリーと CPU コアも多くなるということです。 このサイズを大きくするとビルド実行の速度が上がる可能性がありますが、コストも増えます。
ビルド・サイズについて詳しくは、ビルド・サイズの決定を参照してください。
-
ibmcloud ce build update
コマンドを使用して、より大きなサイズを使用するようビルド構成を更新します。次に例を示します。ibmcloud ce build update --name <BUILD_NAME> --size <SIZE>
-
ibmcloud ce buildrun submit
コマンドを使用して、新しいビルドを実行依頼します。buildrun submit
コマンドには、--build
オプションを指定して、ビルド構成の名前を指定する必要があります。 必要に応じて、--name
オプションを指定して、そのビルド実行の名前を指定することもできます。--name
オプションを指定した場合は、必ず、失敗したビルド実行とは異なるビルド実行名を使用するか、失敗したビルド実行をibmcloud ce buildrun delete
コマンドを使用して削除してください。 以下に例を示します。ibmcloud ce buildrun submit --build <BUILD_NAME> --name <BUILDRUN_NAME>