I builder sono immagini con controllo delle versioni che contengono tutte le necessari per creare un container eseguibile. Ogni builder utilizza una specifica la distribuzione del sistema operativo come immagine di base, ad esempio Ubuntu 22, e supporta più dei linguaggi di programmazione.
Potresti dover personalizzare la versione del builder se hai bisogno di:
- Una dipendenza specifica del sistema operativo disponibile solo in una specifica versione del builder.
- Una versione specifica del linguaggio di programmazione disponibile solo in di una specifica versione del builder.
Build locali
Per le build locali, devi aver installato l'interfaccia a riga di comando Pack e Docker.
Prima di iniziare
- Installa Docker Community Edition (CE)
sulla workstation. Docker viene utilizzato da
pack
come generatore di immagini OCI. - Installa l'interfaccia a riga di comando Pack.
- Installa il controllo del codice sorgente Git per recuperare l'applicazione di esempio da GitHub.
Specifica la versione del builder con pack
Puoi aggiungere il flag --builder
al comando pack per specificare la versione
di Builder che vuoi utilizzare:
pack build SERVICE_IMAGE_NAME --builder=BUILDER_IMAGE_URL
Sostituisci:
BUILDER_IMAGE_URL
con l'URL dello strumento di creazione. Esempio:gcr.io/buildpacks/builder:google-22
SERVICE_IMAGE_NAME
con il nome che hai scelto per l'immagine dell'applicazione.
Per scoprire di più sul comando pack
, consulta le
Documentazione relativa all'interfaccia a riga di comando
Specifica la versione del builder con project.toml
Puoi utilizzare un descrittore del progetto buildpack
(project.toml
) per impostare il builder quando crei con pack
- Nella directory root dell'applicazione, crea un file denominato
project.toml
con la seguente configurazione:[build] builder = "BUILDER_IMAGE_URL"
-
Crea la tua applicazione eseguendo il comando "pack":
pack build SERVICE_IMAGE_NAME
Sostituisci:
BUILDER_IMAGE_URL
con l'URL dello strumento di creazione, ad esempiogcr.io/buildpacks/builder:google-22
SERVICE_IMAGE_NAME
con il nome che hai scelto per l'immagine dell'applicazione.
Build remote
Puoi utilizzare uno specifico builder con Cloud Build aggiungendo --pack
quando invii il progetto.
Prima di iniziare
- Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Enable the Cloud Build and Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Enable the Cloud Build and Artifact Registry APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Assicurati che il tuo progetto Google Cloud abbia accesso a un repository di immagini container.
Per configurare l'accesso a un Repository Docker in Artifact Registry:
- Crea un nuovo repository Docker nella stessa località del tuo progetto Google Cloud.
Sostituisci:gcloud artifacts repositories create REPO_NAME \ --repository-format=docker \ --location=REGION --description="DESCRIPTION"
REPO_NAME
con il nome che scegli per il repository Docker.REGION
con località in o più vicina alla località del progetto Google Cloud.DESCRIPTION
con una descrizione di tua scelta.
Ad esempio, per creare un repository
docker
inus-west2
con la descrizione "Docker repository" (Repository Docker), esegui:gcloud artifacts repositories create buildpacks-docker-repo --repository-format=docker \ --location=us-west2 --description="Docker repository"
- Verifica che il repository sia stato creato:
gcloud artifacts repositories list
Nell'elenco dovresti vedere il nome che hai scelto per il repository Docker.
- Crea un nuovo repository Docker nella stessa località del tuo progetto Google Cloud.
Crea l'applicazione utilizzando un builder specifico
- Utilizza
gcloud
per inviare il codice sorgente della richiesta a Cloud Build:gcloud builds submit --pack builder=BUILDER_IMAGE_URL,image=LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/SERVICE_IMAGE_NAME
Sostituisci:
BUILDER_IMAGE_URL
con l'URL del builder. Esempio:gcr.io/buildpacks/builder:google-22
LOCATION
con il nome della regione del container repository Git. Esempio:us-west2-docker.pkg.dev
PROJECT_ID
con l'ID del tuo progetto Google Cloud.REPO_NAME
con il nome del tuo repository Docker.SERVICE_IMAGE_NAME
con il nome dell'immagine container che hai creato.
Per scoprire di più sul comando
submit
, consulta le Cloud Build documentazione. -
Verifica che l'applicazione di esempio sia stata pubblicata in
REPO_NAME
:gcloud artifacts docker images list LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME
Sostituisci:
LOCATION
con il nome della regione del repository di container. Esempio:us-west2-docker.pkg.dev
PROJECT_ID
con l'ID del tuo progetto Google Cloud.REPO_NAME
con il nome del tuo repository Docker.
Esegui il deployment dall'origine con Cloud Run
Puoi utilizzare un descrittore del progetto buildpack
file, ad esempio project.toml
per impostare il builder quando esegui il deployment dall'origine con Cloud Run
- Inizializza un file
project.toml
nella directory radice della tua applicazione e incollaci la configurazione seguente:[build] builder = "BUILDER_IMAGE_URL"
-
Esegui il deployment dell'applicazione dall'origine
gcloud run deploy --source . SERVICE_IMAGE_NAME
Sostituisci:
BUILDER_IMAGE_URL
con l'URL dello strumento di creazione. Esempio:gcr.io/buildpacks/builder:google-22
SERVICE_IMAGE_NAME
con il nome dell'immagine container che hai creato.