建造者

Generic Builder

建構包具有預設的通用建構工具,可建立專為在 Google Cloud 服務上執行的容器映像檔,包括但不限於:Google Kubernetes Engine、GKE Enterprise、Cloud Run、App Engine 和 Cloud Run functions。

Buildpack 通用建構工具:

  1. 自動偵測原始碼的語言。建構包一般建構工具會掃描常見的專案設定檔,判斷特定語言版本。舉例來說,如果建構工具偵測到原始碼是 Node.js,就會檢查 package.json 檔案中的 engines 欄位,判斷 Node.js 的特定版本。如果建構工具無法判斷特定版本,就會使用最新版本。
  2. 判斷該原始碼是應用程式 (服務) 還是函式。
  3. 將原始碼建構為可部署的容器映像檔。

一般建構工具本身是容器映像檔,公開託管於 Container Registry。

標記 位置 作業系統
latest gcr.io/buildpacks/builder:latest Ubuntu 24。latest 代碼預設為一般建構工具版本 google-24。
google-24 gcr.io/buildpacks/builder:google-24 Ubuntu 24
google-22 gcr.io/buildpacks/builder:google-22 Ubuntu 22
v1 gcr.io/buildpacks/builder:v1 Ubuntu 18

預設建構工具

如要一律使用最新版本和作業系統,可以指定 latest 標記。latest 標記預設為一般建構工具的 google-24 版本,並在您執行 gcloud run deploy 指令時使用。如需將版本固定,請參閱使用特定建構工具的操作說明。

builder:google-24 支援的執行階段

語言 支援版本 應用程式 函式
Python 3.13.x ✓ ✓
3.14.x ✓ ✓
Node.js 22.x.x ✓ ✓
24.x.x ✓ ✓
26.x.x ✓ ✓
Go 1.x ✓ ✓
Java 17 ✓ ✓
21 ✓ ✓
25 ✓ ✓
Ruby 3.2.x ✓ ✓
3.3.x ✓ ✓
3.4.x ✓ ✓
4.0.x ✓ ✓
PHP 8.2.x ✓ ✓
8.3.x ✓ ✓
8.4.x ✓ ✓
8.5.x ✓ ✓
.NET Core 8.x.x ✓ ✓
10.x.x ✓ ✓
僅限作業系統 ✓

builder:google-22 支援的執行階段

語言 支援版本 應用程式 函式
Python 3.10.x ✓ ✓
3.11.x ✓ ✓
3.12.x ✓ ✓
3.13.x ✓ ✓
Node.js 12.x.x ✓ ✓
14.x.x ✓ ✓
16.x.x ✓ ✓
18.x.x ✓ ✓
20.x.x ✓ ✓
22.x.x ✓ ✓
24.x.x ✓ ✓
Java 8 ✓
11 ✓ ✓
17 ✓ ✓
21 ✓ ✓
Go 1.x ✓ ✓
Ruby 3.1.x ✓ ✓
3.2.x ✓ ✓
3.3.x ✓ ✓
3.4.x ✓ ✓
PHP 8.1.x ✓ ✓
8.2.x ✓ ✓
8.3.x ✓ ✓
8.4.x ✓ ✓
.NET Core 6.x ✓ ✓
7.x ✓ ✓
8.x ✓ ✓

builder:v1 支援的語言

語言 支援版本 應用程式 函式
Python 3.7.x ✓ ✓
3.8.x ✓ ✓
3.9.x ✓ ✓
3.10.x ✓ ✓
3.11.x ✓ ✓
Node.js 8.x.x ✓ ✓
12.x.x ✓ ✓
14.x.x ✓ ✓
16.x.x ✓ ✓
18.x.x ✓ ✓
20.x.x ✓ ✓
Java 8. ✓
11 ✓ ✓
17 ✓ ✓
Go 1.x ✓ ✓
Ruby 2.5.x ✓ ✓
2.6.x ✓ ✓
2.7.x ✓ ✓
3.0.x ✓ ✓
3.1.x ✓ ✓
3.2.x ✓ ✓
3.3.x ✓ ✓
PHP 7.4.x ✓ ✓
8.0.x ✓ ✓
8.1.x ✓ ✓
8.2.x ✓ ✓
.NET Core 3.1.x ✓ ✓
6.x ✓ ✓
7.x ✓ ✓
8.x ✓ ✓

App Engine builder

Buildpack 也會發布用於將應用程式容器化的建構工具,以供 App Engine 第二代執行階段使用。

App Engine 建構工具包含其他建構包和 App Engine 專用設定。例如,這些模型經過最佳化,可提升執行速度和自動更新。建構工具會依執行階段語言和作業系統分類:

語言 作業系統 位置 可觀看版本
Python Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/python Python 3.7、3.8、3.9、3.10、3.11
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/python Python 3.10、3.11、3.12、3.13
Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/python Python 3.14
Node.js Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/nodejs Node.js 10、12、14
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/nodejs Node.js 18、20
Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/nodejs Node.js 24、26
Go Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/go Go 1.12、1.13、1.14、1.15、1.16、1.17、1.18、1.19、1.20
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/go Go 1.16、1.17、1.18、1.19、1.20、1.21、1.22、1.23、1.24、1.25
Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/go Go 1.26、1.27
Java Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/java Java 8、11
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/java Java 17、21
Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/java Java 25
PHP Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/php PHP 7.2、7.3、7.4、8.1
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/php PHP 8.2、8.3、8.4
PHP Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/php PHP 8.5
小茹 Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/ruby Ruby 2.5、2.6。2.7、3.0、3.1
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/ruby Ruby 3.2、3.3、3.4
Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/ruby Ruby 4.0

後續步驟