OS のみのランタイムは、Cloud Run ソース デプロイ用の言語に依存しない汎用ランタイムです。これには、言語固有のランタイム コンポーネントを含まない基本の Ubuntu オペレーティング システム(OS)が含まれます。OS のみのランタイムを使用すると、ソースから Go アプリケーションをデプロイできます。また、Dart や Go などのバイナリもデプロイできます。このランタイムを使用して、ゼロから構築した独自のアプリケーション イメージをデプロイすることもできます。
OS のみのランタイムは、Cloud Run のベースイメージの自動更新と互換性があります。つまり、特定のサポートされている言語ランタイムを使用していない場合でも、アプリケーションはオペレーティング システム レベルのセキュリティ パッチと更新を自動的に受け取ります。
サポートされているスタック
OS のみのランタイムは google-24 スタックで使用できます。使用可能な OS のみのランタイム バージョンとサポート スケジュールの詳細については、ランタイム ライフサイクルをご覧ください。
コンパイル済みバイナリ
OS のみのランタイムでは、事前コンパイルされたバイナリをデプロイできます。ランタイム エイリアスを使用してベースイメージをターゲットにすることもできます。たとえば、google-24/osonly24 ベースイメージを使用するには、エイリアス osonly24 を指定します。
コンパイル言語の場合は、デプロイする前に Linux OS をターゲットとするバイナリをビルドしてください。たとえば、linux/amd64 をターゲットとする Go アプリケーションをコンパイルするには、次のコマンドを実行します。
GOOS="linux" GOARCH=amd64 go build main.go
Cloud Run へのデプロイ
gcloud beta
run deploy コマンドを使用して、ソースから Cloud Run にサービスをデプロイします。次のいずれかのデプロイ方法を使用して、ベースイメージ(osonly24 など)を指定します。
ビルド
ビルドを使用してソースから Cloud Run に Go アプリケーションをデプロイするには、次のコマンドを実行します。
gcloud beta run deploy SERVICE \
--source . \
--base-image=osonly24 \
--project PROJECT_ID \
--automatic-updates
次のように置き換えます。
- SERVICE: Cloud Run サービスの名前。
- PROJECT_ID: Google Cloud プロジェクト ID。
ビルドを使用してソースからデプロイする方法については、ソースコードからサービスをデプロイするをご覧ください。
ビルドなし
ビルドを使用せずにソースから Cloud Run にデプロイするには、次のコマンドを実行します。
gcloud beta run deploy SERVICE \
--source . \
--no-build \
--base-image=osonly24 \
--project PROJECT_ID \
--command COMMAND
次のように置き換えます。
- SERVICE: Cloud Run サービスの名前。
- PROJECT_ID: Google Cloud プロジェクト ID。
- COMMAND: コンテナを起動するコマンド(例:
./main)。
ビルドなしでソースからデプロイする方法については、ソースコードからサービスをデプロイするをご覧ください。