Dockerfile

Fai il commit di un Dockerfile. Nodion fa la build di quell'immagine e la esegue.

Guide passo passo al deploy: Docker.

In Applications → New, collega un repo Gite scegli Dockerfile. Quando trova un Dockerfile, la scansione preferisce questa strategia. Usa i Buildpackse vuoi che sia Nodion a installare il runtime.

Con Prebuilt image salti la build da Git: fai il push dell'immagine su un registrye poi il deploy. L'import da Docker Composein fase di creazione è sperimentale e non è questa strategia.

Cosa imposti

  • Base directory: il contesto di build e la posizione del Dockerfile in un monorepo.
  • Dockerfile name: di solito Dockerfile. La scansione elenca anche Dockerfile.*.
  • Ports: precompilate in base alle istruzioni EXPOSE TCP di quel file. Aggiungine o rimuovine secondo necessità. Dopo la creazione, le porte stanno sul processo web.

Strategia, percorso e base directory si cambiano in seguito in Settings. La modifica vale dal deploy successivo.

Cosa fa una build

  1. Clona il branch.
  2. Usa la base directory come contesto di build. Un .dockerignore presente lì viene rispettato. .git non viene mai inviato.
  3. Esegue la build del Dockerfile indicato. I file multi-stage funzionano. Non c'è un selettore di stage, quindi viene eseguito lo stage finale predefinito.
  4. Fa il push dell'immagine e avvia da lì il processo web.

Le variabili d'ambiente marcate Build nella scheda Environment vengono passate come build arg Docker (ARG). Le variabili di runtime vengono applicate all'avvio del processo, dal deploy successivo. I secret, una volta salvati, restano in sola scrittura.

I secret di BuildKit (RUN --mount=type=secret) non sono supportati. Metti i valori che ti servono in fase di build in quelle variabili Build.

Ascolto e health check

Nodion non imposta PORT su un'app con Dockerfile. Quella variabile serve ai Buildpack. Metti il server in ascolto sulla porta del processo web (da EXPOSE, o quella che imposti in Processes). Se l'elenco è vuoto, Nodion usa la porta di EXPOSE dell'immagine, altrimenti 8080.

Ascolta su tutte le interfacce, non solo su localhost. Il comando di avvio predefinito è CMD / ENTRYPOINT dell'immagine. Se serve, sovrascrivi il comando sul processo.

Il controllo di readiness è una richiesta HTTP GET al Health check path in Settings (predefinito /) sulla porta web. Una risposta 2xx o 3xx supera il controllo. Un HEALTHCHECK Docker nell'immagine viene ignorato.

L'istruzione USER dell'immagine viene rispettata. Un nome utente sconosciuto fa fallire il deploy.

Dai al tuo agente un cloud tutto suo.

Fino a 15 € di credito quando ti registri.

Continua con GitHub

oppure con l'email

Resta aggiornato.

Novità sul prodotto, niente spam. Puoi annullare l'iscrizione quando vuoi.