Bases de Docker pour l'auto-hébergement
Apprenez images, conteneurs, volumes et Docker Compose pour déployer des applications auto-hébergées en confiance.
Docker is the fastest, cleanest way to run self-hosted apps. Once these concepts click, you'll be able to deploy almost anything.
The four concepts you need
- Image — a read-only template for an app (e.g.
jellyfin/jellyfin). - Container — a running instance of an image.
- Volume — persistent storage that survives container updates.
- Network — how containers talk to each other and the outside world.
Your first container
docker run -d \
--name pihole \
-p 53:53/udp -p 80:80 \
-v /opt/pihole/etc:/etc/pihole \
--restart unless-stopped \
pihole/piholeThat single command downloads the image, creates persistent storage, and starts the service.
Docker Compose: the real magic
Typing long docker run commands doesn't scale. Docker Compose lets you describe your whole stack in one file:
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
ports:
- "8096:8096"
volumes:
- ./config:/config
- /mnt/media:/media
restart: unless-stoppedBring it up with one command:
docker compose up -dGolden rules
- Persist data in volumes, never inside the container.
- Pin image versions for predictable updates.
- Back up your compose files and volumes — they are your entire setup.
- Update regularly:
docker compose pull && docker compose up -d.
Where to go next
- Follow our tutorial to install Docker on Ubuntu.
- Compare Docker vs Podman.
- Browse self-hosted apps to deploy.
Master Compose and a whole world of self-hosting opens up.
Articles connexes
Installer Docker sur Ubuntu
Tutoriel pas-à-pas pour installer Docker Engine et Docker Compose sur Ubuntu Server, puis lancer votre premier conteneur.
Bonnes pratiques Docker Compose pour serveurs domestiques
Structurez stacks, volumes, réseaux et mises à jour pour un homelab Compose maintenable.
Installer Portainer
Obtenez une interface web pour gérer conteneurs et stacks Docker en quelques minutes.