Implementare un'applicazione

Quando invii un'app (tramite kf push) a Kf,: tre cicli di vita utilizzati da Kf per acquisire il codice sorgente e consentirgli di gestire il traffico:

  1. Caricamento del codice sorgente
  2. Build
  3. Esegui

Caricamento del codice sorgente

La prima cosa che accade quando kf push è che la CLI di Kf (kf) impacchetta la tua directory (attuale o --path/-p) in un contenitore e la pubblica nel registry dei contenitori configurato per lo spazio. Questo è chiamato container di origine. L'interfaccia a riga di comando Kf crea quindi un tipo App in Kubernetes che contenga sia l'immagine di origine sia la configurazione del file manifest dell'app tramite i flag push.

Ignorare i file durante il push

In molti casi, non vorrai caricare determinati file durante kf push (ad es. "ignorarli"). È qui che puoi utilizzare un file .kfignore (o .cfignore). Analogamente a un file .gitignore, questo file indica all'interfaccia a riga di comando Kf che i file da non includere nel contenitore del codice sorgente.

Per creare un file .kfignore, crea un file di testo denominato .kfignore nella base della tua app (simile a dove archivierai il file manifest ). Poi compilalo con un elenco delimitato da riga nuova di file e directory che non vuoi pubblicare. Ad esempio:

bin
.idea

In questo modo, l'interfaccia a riga di comando Kf non includerà nulla nelle directory bin o .idea.

Kf supporta la sintassi di stile gitignore.

Build

Il ciclo di vita della compilazione è gestito da un TaskRun Tekton. A seconda delle segnalazioni da te fornite durante il push, sceglierà una definizione Attività Tekton. Al momento Kf dispone dei seguenti task Tekton:

  • buildpackv2
  • buildpackv3
  • kaniko

Kf monitora ogni TaskRun come build. Se una compilazione ha esito positivo, l'immagine container risultante viene di conseguenza dispiattata tramite il ciclo di vita di Run (descritto di seguito).

Per ulteriori informazioni, consulta Tempo di esecuzione della build.

Esegui

Il ciclo di vita di Run è responsabile dell'acquisizione di un'immagine container e della creazione di un deployment Kubernetes.

Inoltre, crea:

Per ulteriori informazioni, consulta Tempo di esecuzione della build.

Timeout push

Kf supporta l'impostazione di una variabile di ambiente per indicare il timeout dell'interfaccia a riga di comando durante il push delle app. Se impostate, le variabili KF_STARTUP_TIMEOUT o CF_STARTUP_TIMEOUT vengono analizzate come durata in stile Golang (ad es. 15m, 1h). Se non viene impostato un valore, il timeout push predefinito è 15 minuti.