建造者

一般建構工具

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

Buildpack 通用建構工具:

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

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

標記 位置 作業系統
latest gcr.io/buildpacks/builder:latest Ubuntu 22 (google-22)
google-22 gcr.io/buildpacks/builder:google-22 Ubuntu 22
v1 gcr.io/buildpacks/builder:v1 Ubuntu 18

預設建構工具

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

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
18
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
18
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
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
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
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
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
Ruby 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

後續步驟