Costruttori

Generic Builder

Buildpacks ha un builder generico predefinito che crea immagini container progettate per l'esecuzione su servizi Google Cloud , inclusi, a titolo esemplificativo: Google Kubernetes Engine, GKE Enterprise, Cloud Run, App Engine e Cloud Run Functions.

Il builder generico dei buildpack:

  1. Rileva automaticamente la lingua del codice sorgente. Il builder generico dei buildpack analizza i file di configurazione dei progetti comuni per determinare la versione specifica del linguaggio. Ad esempio, se il builder rileva il codice sorgente come Node.js, esamina il campo engines nel file package.json per determinare una versione specifica di Node.js. Se il builder non riesce a determinare una versione specifica, utilizza l'ultima versione disponibile.
  2. Determina se il codice sorgente è un'applicazione (servizio) o una funzione.
  3. Crea un'immagine container di cui è possibile eseguire il deployment a partire dal codice sorgente.

Il builder generico stesso è un'immagine container ospitata pubblicamente su Container Registry.

Tag Località Sistema operativo
latest gcr.io/buildpacks/builder:latest Ubuntu 24. Il tag latest corrisponde per impostazione predefinita alla versione del builder generico 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

Builder predefinito

Per utilizzare sempre la versione e il sistema operativo più recenti, puoi specificare il tag latest. Il tag latest viene impostato per impostazione predefinita sulla versione google-24 del builder generico e viene utilizzato quando esegui il comando gcloud run deploy. Se devi eseguire il pinning a una versione, consulta le istruzioni su come utilizzare un builder specifico.

Runtime supportati da builder:google-24

Lingua Versioni supportate Applicazioni Funzioni
Python 3.13.x ✓ ✓
3.14.x ✓ ✓
3.15.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 ✓ ✓
Solo sistema operativo ✓

Runtime supportati da builder:google-22

Lingua Versioni supportate Applicazioni Funzioni
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 ✓ ✓

Lingue supportate da builder:v1

Lingua Versioni supportate Applicazioni Funzioni
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 ✓ ✓

Builder di App Engine

I buildpack pubblicano anche i builder utilizzati per containerizzare le applicazioni per i runtime di seconda generazione di App Engine.

I builder di App Engine includono buildpack aggiuntivi e configurazioni specifiche di App Engine. Ad esempio, sono ottimizzati per la velocità di esecuzione e gli aggiornamenti automatici. I builder sono suddivisi per linguaggio di runtime e sistema operativo:

Lingua Sistema operativo Località Versioni disponibili
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, 3.15
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
Vai 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
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, 3.3, 3.4
Ubuntu 24 http://us-central1-docker.pkg.dev/serverless-runtimes/google-24-full/builder/ruby Ruby 4.0

Passaggi successivi