docker-compose con Postgres e Redis
Eseguire l'intero stack con un solo comando
docker-compose con Postgres e Redis è una lezione Django Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Django Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Django Academy include 4 lezioni in totale.
Un comando, l'intero stack
docker-compose definisce più container in un unico file, così Django, Postgres e Redis si avviano insieme con un solo comando. 🧩
Il file compose
Tutto si trova in docker-compose.yml, dove ogni container necessario diventa una voce sotto la chiave services.
services:
web:
db:
redis:Il servizio web
Il servizio web viene creato dal Dockerfile ed esegue Django, il cuore dell'intero stack.
web:
build: .
command: gunicorn config.wsgi:application --bind 0.0.0.0:8000Aggiungere Postgres
Il servizio db utilizza l'immagine ufficiale di Postgres, offrendo un database reale senza installare nulla localmente.
db:
image: postgres:16Aggiungere Redis
Il servizio redis esegue l'immagine ufficiale di Redis, pronto a fungere da cache o da broker di messaggi per Celery.
redis:
image: redis:7Connettersi tramite il nome del servizio
Compose assegna a ogni servizio un nome DNS, quindi Django raggiunge Postgres sull'host db, non su localhost.
DATABASE_URL=postgres://user:pass@db:5432/appAttendere con depends_on
Utilizzi depends_on per fare in modo che web si avvii dopo db e redis, mantenendo ordinato l'avvio.
web:
depends_on:
- db
- redisRendere persistenti i dati con i volumi
Un volume denominato memorizza i dati di Postgres all'esterno del container, così le righe sopravvivono a riavvii e ricostruzioni.
db:
volumes:
- pgdata:/var/lib/postgresql/dataPassare la configurazione come variabili d'ambiente
Passi segreti e impostazioni tramite environment o un env_file, mantenendo la configurazione fuori dall'immagine.
db:
environment:
POSTGRES_DB: app
POSTGRES_PASSWORD: passMappare le porte sull'host
La chiave ports inoltra una porta del container alla macchina, così può aprire l'app nel browser.
web:
ports:
- "8000:8000"Avviare tutto
Eseguite docker compose up e l'intero stack si avvia insieme; aggiungete -d per eseguirlo in background.
docker compose up -dVerifica rapida
Come raggiunge il database il vostro container web in Compose?
Riepilogo
Avete collegato uno stack completo in docker-compose: i servizi web, db e redis, connessi tramite nome, con volumi per i dati e un unico comando per l'avvio. 🚀
Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «docker-compose con Postgres e Redis» è gratuita?
Sì — il testo completo di «docker-compose con Postgres e Redis» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Django Academy, passa a CoddyKit PRO. Il corso Django Academy include 4 lezioni in totale.
Cosa imparerò in «docker-compose con Postgres e Redis»?
Eseguire l'intero stack con un solo comando Eserciti Django Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Django Academy?
Non è richiesta alcuna esperienza precedente. Django Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «docker-compose con Postgres e Redis»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Django Academy?
Sì. Ogni lezione Django Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Scrivere un Dockerfile per Django
- docker-compose con Postgres e Redis
- Entry point, migrazioni e collectstatic
- Buone pratiche per le immagini di produzione