Con l’Hosting di Applicazioni, puoi utilizzare un Dockerfile per configurare l’immagine del tuo container. L’utilizzo di un Dockerfile offre un maggiore controllo ed è possibile utilizzare quasi tutti i linguaggi, senza limitarsi ai linguaggi supportati dai Buildpack.

Un Dockerfile configura l’ambiente in base alle istruzioni contenute al suo interno. Queste devono includere i comandi per installare il linguaggio, il software adiacente e le librerie, impostare la porta e avviare il server web. Kinsta imposta automaticamente la variabile d’ambiente PORT. Non è necessario definirla da soli o inserirla nell’applicazione. Ad esempio, in Node.js, utilizzate process.env.PORT nel codice quando fate riferimento alla porta del server.

Informazioni dettagliate su come creare un Dockerfile sono disponibili nei Docker Docs.

Impostazioni di Dockerfile

Per utilizzare un Dockerfile, quando si aggiunge un’applicazione, selezionare l’opzione Usa Dockerfile per configurare l’immagine del container nel campo Ambiente di Build.

Il Percorso del Dockerfile è il percorso del Dockerfile rispetto alla root del repository. Ad esempio, se il Dockerfile si trova nella root del repository, bisogna inserire Dockerfile in questo campo. Se il Dockerfile si trova in una sottodirectory chiamata app, bisogna inserire il percorso del Dockerfile: app/Dockerfile.

Il context è il percorso del repository a cui bisogna accedere per poter costruire l’applicazione. La maggior parte delle applicazioni viene costruita dalla root del repository ed è possibile inserire la root del repository (.) nel campo Context. Se l’applicazione deve essere costruita da una sottodirectory (ad esempio app), va inserito il percorso della sottodirectory nel campo Context: app.

Per aggiungere l’applicazione vanno compilati gli altri campi e fare clic su Aggiungi applicazione.

Aggiungere un'applicazione con un tipo di build Dockerfile.
Aggiungere un’applicazione con un tipo di build Dockerfile.

Esempio di Dockerfile

Per aiutarvi a iniziare, ecco un esempio di Dockerfile che potete usare come riferimento o come punto di partenza.


FROM node:carbon

LABEL maintainer="Kinsta devs"

# Set the working directory to /app
WORKDIR /app

# Copy the current directory contents into the container at /app
COPY . /app

# Install any needed packages specified in package.json
RUN npm install

# Run app when the container launches
CMD ["npm", "start"]