Nur-Betriebssystem-Laufzeit konfigurieren

Die OS-only-Laufzeit ist eine sprachunabhängige Allzwecklaufzeit für Cloud Run-Bereitstellungen aus dem Quellcode. Es enthält das Basisbetriebssystem Ubuntu ohne zusätzliche sprachspezifische Laufzeitkomponenten. Mit der reinen Betriebssystemlaufzeit können Sie Go-Anwendungen aus dem Quellcode und Binärdateien wie Dart und Go bereitstellen. Sie können auch eigene Anwendungs-Images bereitstellen, die Sie mit dieser Laufzeit von Grund auf neu erstellt haben.

Die reine Betriebssystemlaufzeit ist mit automatischen Basis-Image-Updates für Cloud Run kompatibel. Das bedeutet, dass Ihre Anwendung automatisch Sicherheitsupdates und ‑patches auf Betriebssystemebene erhält, auch wenn Sie keine bestimmte unterstützte Sprachlaufzeit verwenden.

Unterstützter Stack

Die OS-only-Laufzeit ist im google-24-Stack verfügbar. Weitere Informationen zu den verfügbaren Laufzeitversionen nur für Betriebssysteme und zum Supportzeitplan finden Sie unter Laufzeitlebenszyklus.

Kompilierte Binärdateien

Mit der OS-only-Laufzeit können Sie vorkompilierte Binärdateien bereitstellen. Sie können auch ein Basis-Image mit einem Laufzeitalias als Ziel festlegen. Wenn Sie beispielsweise das Basis-Image google-24/osonly24 verwenden möchten, geben Sie den Alias osonly24 an.

Bei kompilierten Sprachen müssen Sie die Binärdatei für ein Linux-Betriebssystem erstellen, bevor Sie sie bereitstellen. Wenn Sie beispielsweise eine Go-Anwendung für linux/amd64 kompilieren möchten, führen Sie den folgenden Befehl aus:

GOOS="linux" GOARCH=amd64 go build main.go

In Cloud Run bereitstellen

Stellen Sie das Binärprogramm in Cloud Run bereit, indem Sie den folgenden gcloud run deploy-Befehl ausführen und das Basis-Image angeben (z. B. osonly24):

gcloud beta run deploy SERVICE \
--source . \
--no-build \
--base-image=osonly24 \
--project PROJECT_ID \
--command COMMAND

Ersetzen Sie Folgendes:

  • SERVICE: Der Name Ihres Cloud Run-Dienstes.
  • PROJECT_ID: die Google Cloud Projekt-ID.
  • COMMAND: Der Befehl, mit dem der Container gestartet wird, z. B. ./main.

Weitere Informationen zur Bereitstellung aus der Quelle ohne Build finden Sie unter Dienste aus Quellcode bereitstellen.