Creare un’Immagine Docker per un Servizio Python: Guida Passo-Passo

LINUX

Docker è diventato uno strumento essenziale per lo sviluppo e la distribuzione di applicazioni, grazie alla sua capacità di isolare le applicazioni e le loro dipendenze in container leggeri e portabili. In questo articolo, esploreremo come creare un’immagine Docker per un semplice servizio Python utilizzando Flask. Seguiremo un approccio passo-passo, illustrando ogni fase del processo.

Prerequisiti

Prima di iniziare, assicurati di avere Docker installato sulla tua macchina. Puoi scaricare Docker Desktop dal sito ufficiale di Docker qui.

Passo 1: Creare il Progetto Python

Per prima cosa, creiamo una semplice applicazione Python. Useremo Flask, un microframework per Python, per creare un semplice servizio web. Creiamo un file chiamato app.py.

app.py

from flask import Flask

app = Flask(__name__)

@app.route('/')
def home():
return "Hello, Docker!"

if __name__ == '__main__':
app.run(host='0.0.0.0')

Questo semplice servizio restituisce la stringa “Hello, Docker!” quando accediamo alla radice del server.

Passo 2: Creare il File requirements.txt

Il file requirements.txt elenca tutte le dipendenze del progetto. Creiamo questo file e aggiungiamo Flask come dipendenza.

requirements.txt

Flask==2.0.1

Passo 3: Creare il Dockerfile

Il Dockerfile è un file di testo che contiene tutte le istruzioni per costruire l’immagine Docker. Creiamo un file chiamato Dockerfile e aggiungiamo il seguente contenuto:

Dockerfile

# Usa un'immagine base di Python
FROM python:3.9-slim

# Imposta la directory di lavoro nel container
WORKDIR /app


# Copia il file requirements.txt nella directory di lavoro
COPY requirements.txt .


# Installa le dipendenze
RUN pip install --no-cache-dir -r requirements.txt


# Copia il resto del codice dell'applicazione
COPY . .


# Espone la porta su cui l'applicazione gira
EXPOSE 5000


# Definisce il comando per avviare l'applicazione
CMD ["python", "app.py"]

Passo 4: Costruire l’Immagine Docker

Ora che abbiamo il nostro Dockerfile, possiamo costruire l’immagine Docker. Apri un terminale, naviga nella directory dove si trovano i tuoi file (app.py, requirements.txt, Dockerfile) e esegui il seguente comando:

docker build -t my-python-app .

Questo comando legge le istruzioni nel Dockerfile e costruisce un’immagine Docker chiamata my-python-app.

Passo 5: Eseguire il Container Docker

Una volta costruita l’immagine, possiamo eseguire un container basato su quell’immagine con il comando:

docker run -p 5000:5000 my-python-app

Questo comando esegue il container e mappa la porta 5000 del tuo host alla porta 5000 del container, permettendoti di accedere al servizio web all’indirizzo http://localhost:5000.

Docker è uno strumento potente che può semplificare notevolmente lo sviluppo e la distribuzione delle tue applicazioni. Spero che questa guida ti sia stata utile e ti invito a esplorare ulteriormente le potenzialità di Docker nel tuo prossimo progetto.

Se vuoi farmi qualche richiesta o contattarmi per un aiuto riempi il seguente form

    Comments