Build schlägt fehl, wenn der ephemere Speichergrenzwert überschritten wird

Nachdem Sie einen Build erstellt und ausgeführt haben, wird der Build nicht erfolgreich ausgeführt, und Sie erhalten eine Nachricht, dass der ephemere Speicherverbrauch die Grenzwerte überschreitet.

Wenn Sie eine Nachricht empfangen, dass der ephemere Speichergrenzwert überschritten wird, ist Ihre Buildgröße zu klein.

Wenn ein Build ausgeführt wird, muss Quellcode geladen werden. Wenn Sie einen Docker-Build verwenden, muss das Basisimage heruntergeladen werden, und die erforderlichen Schritte zum Erstellen des Zielimage müssen ausgeführt werden. Zur Buildausführung ist Plattenspeicher für diese Schritte erforderlich; dieser Plattenspeicher wird freigegeben, nachdem die Buildausführung abgeschlossen ist. Dieser Plattenspeicherplatz wird als lokaler ephemerer Speicher bezeichnet. Abhängig davon, ob Sie eine Größe für small, medium, large, xlarge oder xxlarge für Ihren Build auswählen, ist ein maximaler ephemerer Speicher für eine Buildausführung verfügbar. Weitere Informationen zur Buildgröße finden Sie unter Größe des Builds ermitteln. Wenn der maximale Wert für den ephemeren Speicher erreicht ist, wird die Buildausführung mit einer Fehlernachricht gestoppt. Beispiel:

Beispielfehlernachrichten

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>.

Versuchen Sie eine der folgenden Lösungen.

Unabhängig davon, ob Sie Ihren Build in der Konsole oder in der CLI ausführen, verwenden Sie die CLI zur Fehlerbehebung bei Problemen mit Ihrem Build.

  1. Führen Sie den Befehl ibmcloud ce buildrun get --name BUILDRUN_NAME aus, um die Details zu Ihrer Buildausführung anzuzeigen.
  2. Überprüfen Sie den Wert für Reason in der Befehlsausgabe.

Verwenden Sie zum Beheben dieses Problems eine höhere Größe für den Build.

Eine größere Buildgröße bedeutet auch, dass dem Build mehr Hauptspeicher und CPU-Kerne zugeordnet werden. Durch die Erhöhung dieser Größe wird die Buildausführung wahrscheinlich beschleunigt, aber auch die Kosten steigen.

Weitere Informationen zu Buildgrößen finden Sie unter Build-Größen bestimmen.

  1. Verwenden Sie den Befehl ibmcloud ce build update, um die Buildkonfiguration so zu aktualisieren, dass eine höhere Größe verwendet wird. Beispiel:

    ibmcloud ce build update --name <BUILD_NAME> --size <SIZE>
    
  2. Verwenden Sie den Befehl ibmcloud ce buildrun submit, um eine neue Buildausführung zu übergeben. Für den Befehl buildrun submit müssen Sie die Option --build angeben, um den Namen der Buildkonfiguration anzugeben. Optional können Sie auch die Option --name angeben, um den Namen für diese Buildausführung anzugeben. Wenn Sie die Option --name angeben, stellen Sie sicher, dass Sie für die Buildausführung einen anderen Namen als den Namen der fehlgeschlagenen Buildausführung verwenden; stellen Sie alternativ sicher, dass die fehlgeschlagene Buildausführung mit dem Befehl ibmcloud ce buildrun delete gelöscht wurde. Beispiel:

    ibmcloud ce buildrun submit --build <BUILD_NAME> --name <BUILDRUN_NAME>