Creazione di container

Knative serving accetta immagini container create con qualsiasi strumento in grado di creando immagini container, purché rispettino il contratto del container. In particolare, il codice deve ascoltare le richieste HTTP sulla porta definita la variabile di ambiente PORT. Questa variabile di ambiente PORT è inserite automaticamente da Knative serving nel tuo container.

In questa pagina vengono descritti i vari modi per creare immagini container:

  • Utilizzo di un Dockerfile
  • Utilizzo dei buildpack

Creazione con Dockerfile

Se utilizzi i file Dockerfile, puoi utilizzare uno dei seguenti metodi per la compilazione:

  • Esegui la compilazione utilizzando Cloud Build
  • Crea localmente con Docker

Creazione di pacchetti con Cloud Build

Per creare l'immagine su Google Cloud:

  1. Vai alla cartella contenente le origini e il Dockerfile.

  2. Esegui il comando:

    gcloud builds submit --tag IMAGE_URL

    Sostituisci IMAGE_URL con un riferimento all'immagine del container, ad esempio gcr.io/cloudrun/hello.

Per istruzioni dettagliate su Cloud Build, vedi Deployment in Knative serving.

Per suggerimenti su come migliorare le prestazioni delle build, consulta Velocizzare le build

Creazione di build in locale ed esecuzione del push utilizzando Docker

Se Docker hai installato in locale, può usare docker build anziché utilizzare Cloud Build o Buildpacks.

Prima di compilare le sorgenti in un'immagine container ("containerizzazione") utilizzando Docker, è necessario che sia presente un Dockerfile insieme alle sorgenti. Le istruzioni riportate di seguito utilizzano Container Registry come registro delle immagini.

Per creare l'immagine container utilizzando Docker:

  1. Vai alla cartella contenente le origini e Dockerfile.

  2. Esegui il comando:

    docker build . --tag IMAGE_URL

    Sostituisci IMAGE_URL con un riferimento all'immagine del container, ad esempio gcr.io/cloudrun/hello.

  3. Se non hai ancora configurato Docker in modo che utilizzi Google Cloud CLI per autenticare le richieste a Container Registry, fallo ora utilizzando il comando:

    gcloud auth configure-docker

    Devi eseguire questa operazione prima di poter eseguire il push o il pull delle immagini utilizzando Docker. Devi farlo solo una volta.

  4. Esegui il push dell'immagine container in Container Registry:

    docker push IMAGE_URL

    Sostituisci IMAGE_URL con un riferimento all'immagine container, per ad esempio gcr.io/cloudrun/hello.

Per escludere i file locali da questa procedura, segui le istruzioni per il file di configurazione .dockerignore.

Creazione con Buildpacks

Per informazioni complete sui Buildpacks, consulta Sito web Buildpacks. Google fornisce un insieme di buildpack compatibili con CNCF che generano codice sorgente in immagini container progettate per essere eseguite sulle piattaforme di container di Google Cloud, incluso il servizio Knative.

Al momento sono supportate le seguenti piattaforme:

  • Vai
  • Node.js
  • Python
  • Java
  • .NET Core

Creazione con Buildpacks utilizzando Cloud Build

Per creare con un Buildpack:

  1. Vai alla cartella contenente le origini.

  2. Esegui il comando:

    gcloud builds submit --pack image=IMAGE_URL

    Sostituisci IMAGE_URL con l'URL dell'immagine container, ad esempio gcr.io/myproject/myservice.

  3. Attendi il completamento della build.

Creazione con Buildpack mediante la riga di comando pack

Per creare utilizzando il comando pack:

  1. Se non lo hai ancora fatto, installa Docker.

  2. Se non hai ancora configurato Docker in modo che utilizzi Google Cloud CLI per autenticare le richieste a Container Registry, fallo ora utilizzando il comando:

    gcloud auth configure-docker

    Devi eseguire questa operazione prima di eseguire il push o il pull delle immagini con Docker. Devi farlo solo una volta.

  3. Se non l'hai ancora fatto, installa pack.

  4. Vai alla cartella contenente le origini.

  5. Esegui il seguente comando per eseguire il build e il push nel tuo registry dei container:

    pack build --publish IMAGE_URL

    Sostituisci IMAGE_URL con un riferimento all'immagine del container, ad esempio gcr.io/cloudrun/hello.

  6. Attendi il completamento di pack.

Per ulteriori informazioni, leggi le istruzioni riportate in Creazione di un'applicazione.

Passaggi successivi