Guides

Qu'est-ce que Docker ? Conteneurs expliqués aux non-développeurs

Docker est un outil qui empaquette une appli avec tout ce qu'il lui faut pour tourner — la bonne version du langage, les bibliothèques, les outils système et les réglages — dans une unité standard appelée conteneur. Un conteneur fonctionne de la même façon sur l'ordinateur d'un développeur, un serveur de test ou un hébergement cloud, ce qui met fin au problème classique du « mais ça marchait sur ma machine ». La recette pour construire un conteneur est un court fichier texte appelé Dockerfile.

Pourquoi Docker compte quand on construit avec l'IA

Si votre appli a un backend — une API en Python, Node, C# ou Java — elle doit tourner quelque part où exactement le bon logiciel est installé. Docker est la façon la plus courante de rendre cela reproductible.

  • Déployer des backends. Beaucoup d'hébergeurs, dont Mythex, déploient les backends en construisant un conteneur à partir d'un Dockerfile. Dans Mythex, demander « une API Web C# » ou « un backend Java » vous donne l'appli plus un Dockerfile, et la publication construit l'image et la déploie (Backends API).
  • Quitter une plateforme. Si vous exportez une appli créée par IA, un Dockerfile facilite beaucoup son exécution sur un autre hébergeur. Voir comment exporter et auto-héberger une appli créée par IA.
  • Travailler avec des développeurs. Un développeur qui rejoint votre projet peut démarrer toute l'appli avec une ou deux commandes, au lieu de passer une journée à tout installer.

Une analogie du quotidien : les conteneurs de transport

Avant les conteneurs maritimes standardisés, les marchandises étaient chargées pièce par pièce — sacs, fûts, caisses — et chaque port les traitait différemment. Le conteneur d'acier standard a tout changé : on le remplit une fois, et n'importe quel navire, grue, train ou camion peut le déplacer sans se soucier de ce qu'il contient.

Docker fait la même chose pour le logiciel :

  • Le Dockerfile est la liste de colisage et le mode d'emploi.
  • L'image est le conteneur scellé et rempli.
  • Un conteneur en cours d'exécution est cette boîte mise au travail sur un navire — ici, un serveur.
  • Docker Engine est la grue et le navire : le logiciel sur un serveur qui sait faire tourner n'importe quel conteneur.

Comment fonctionne Docker

ÉlémentCe que c'est
DockerfileUn fichier texte contenant les instructions pas à pas pour construire l'image.
ImageUn paquet en lecture seule : les bases du système d'exploitation, le runtime, les bibliothèques et votre code.
ConteneurUne instance en cours d'exécution d'une image, isolée des autres applis de la même machine.
RegistreUn endroit pour stocker et partager des images, comme Docker Hub ou le registre d'un fournisseur cloud.
Docker EngineLe service en arrière-plan qui construit les images et fait tourner les conteneurs. Gratuit et open source.
Docker DesktopUne application pour Mac, Windows et Linux qui regroupe le moteur avec une interface graphique.

Conteneurs contre machines virtuelles : une machine virtuelle prétend être un ordinateur entier séparé avec son propre système d'exploitation, elle est donc lourde et lente à démarrer. Un conteneur partage le noyau du système de l'hôte et n'isole que l'appli et ses fichiers ; il démarre en général en quelques secondes et consomme beaucoup moins de mémoire. Plusieurs conteneurs peuvent tourner côte à côte sur un même serveur.

Un exemple concret : une petite API Python

Imaginons que votre créateur d'applis par IA a créé un backend Python FastAPI pour une appli de réservation. Le Dockerfile pourrait ressembler à ceci :

FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]

Ligne par ligne :

LigneCe qu'elle fait
FROM python:3.12-slimPart d'une image officielle qui contient déjà Python 3.12.
WORKDIR /appTravaille dans le dossier /app du conteneur.
COPY requirements.txt . et RUN pip install ...Copie la liste des bibliothèques et les installe.
COPY . .Copie le code propre de l'appli.
EXPOSE 8000Indique que l'appli écoute sur le port 8000.
CMD [...]La commande qui démarre le serveur web quand le conteneur tourne.

En clair : « Partir de Python 3.12. Installer les bibliothèques listées dans requirements.txt. Copier le code. Démarrer le serveur web sur le port 8000. »

Un développeur (ou une plateforme d'hébergement) lance ensuite deux commandes :

docker build -t booking-api .
docker run -p 8000:8000 booking-api

La première construit l'image et la nomme booking-api. La seconde démarre un conteneur et relie le port 8000 de la machine au port 8000 à l'intérieur du conteneur. L'API tourne maintenant — de la même façon que sur n'importe quel serveur doté de Docker.

Remarquez ce qui n'est pas dans l'image : les mots de passe et les clés d'API. Ceux-ci sont transmis au démarrage du conteneur, sous forme de variables d'environnement, pour que la même image puisse tourner en test et en production avec des réglages différents.

Termes clés

TermeSignification
ConteneurUn paquet isolé et en cours d'exécution d'une appli et de ses dépendances.
ImageLe modèle à partir duquel un conteneur est démarré.
Image de baseLe point de départ de la ligne FROM d'un Dockerfile, comme python:3.12-slim ou node:22.
CoucheChaque étape du Dockerfile ajoute une couche mise en cache, ce qui accélère les reconstructions.
Redirection de portRelier un port de l'hôte à un port à l'intérieur du conteneur.
VolumeUn stockage qui survit au remplacement d'un conteneur. Les conteneurs eux-mêmes sont jetables.
Docker ComposeUn fichier décrivant plusieurs conteneurs qui tournent ensemble, comme une API plus une base de données.
KubernetesUn système pour faire tourner de nombreux conteneurs sur de nombreux serveurs. La plupart des petites applis n'en ont pas besoin.

Idées reçues

  • « Docker est une machine virtuelle. » C'est plus léger : les conteneurs partagent le noyau de l'hôte.
  • « Les données enregistrées dans un conteneur sont en sécurité. » Les conteneurs sont censés être jetés et remplacés. Tout ce qui doit durer — données utilisateurs, fichiers téléversés — doit aller dans une base de données, un stockage de fichiers ou un volume.
  • « Mettre des secrets dans le Dockerfile ne pose pas problème, car c'est privé. » Les images sont partagées et poussées vers des registres. Passez plutôt les secrets à l'exécution.
  • « Docker rend une appli sûre. » L'isolation aide, mais un conteneur qui fait tourner un logiciel obsolète avec des réglages faibles reste vulnérable.
  • « Chaque appli a besoin de Docker. » Un site statique ou un frontend simple est en général hébergé sous forme de simples fichiers, sans aucun conteneur.
  • « Docker Desktop est gratuit pour tout le monde. » Le moteur est gratuit ; Docker Desktop exige un abonnement payant pour les grandes entreprises, selon les conditions de Docker.

Quoi demander à votre créateur d'applis par IA

  • « Cette appli a-t-elle besoin d'un Dockerfile ? Si oui, explique chaque ligne en français simple. »
  • « Utilise une image de base officielle et légère, et fixe la version du langage. »
  • « Garde les secrets hors de l'image. Lis-les depuis des variables d'environnement à l'exécution. »
  • « Assure-toi que les fichiers téléversés et les données sont stockés dans la base de données ou un stockage de fichiers, et non dans le conteneur. »
  • « Ajoute un fichier Docker Compose pour qu'un développeur puisse faire tourner le frontend, l'API et la base de données en local avec une seule commande. »
  • « Ajoute un point de terminaison de contrôle de santé pour que l'hébergeur puisse savoir si l'API est en marche. »

Docker dans Mythex

Vous n'avez pas besoin d'installer ni de faire tourner Docker pour utiliser Mythex. Votre projet tourne dans un bac à sable cloud privé, et quand vous demandez un backend qui nécessite un conteneur — par exemple en C#, Java ou un service Node ou Python sur mesure — Mythex écrit l'appli plus un Dockerfile, la prévisualise dans le bac à sable et la déploie lors de la publication, sans aucune configuration d'hébergement (comment les technologies sont choisies). Avec Pro, vous pouvez exporter le projet ou le synchroniser avec GitHub et emporter le Dockerfile avec vous. Pour comprendre comment backends et frontends s'articulent, voir frontend et backend.

Questions

Qu'est-ce que Docker, en termes simples ?

Docker est un outil qui empaquette une appli avec tout ce qu'il lui faut pour tourner — le runtime du langage, les bibliothèques et les réglages — dans une unité standard appelée conteneur. Le conteneur tourne de la même façon sur un ordinateur portable, un serveur de test ou un hébergement cloud.

Quelle est la différence entre une image Docker et un conteneur ?

Une image est le modèle empaqueté et en lecture seule : l'appli et ses dépendances, construits à partir d'un Dockerfile. Un conteneur est une copie en cours d'exécution de cette image. Vous pouvez démarrer plusieurs conteneurs à partir d'une seule image.

Docker est-il une machine virtuelle ?

Non. Une machine virtuelle émule un ordinateur complet avec son propre système d'exploitation. Les conteneurs partagent le noyau du système d'exploitation de la machine hôte et n'isolent que l'appli, ce qui les rend plus rapides à démarrer et moins gourmands en mémoire.

Docker est-il gratuit ?

Docker Engine, le cœur qui fait tourner les conteneurs, est gratuit et open source. Depuis septembre 2026, les conditions de Docker indiquent que Docker Desktop est gratuit pour les projets open source non commerciaux et pour les entreprises de moins de 250 salariés et de moins de 10 millions de dollars de chiffre d'affaires annuel ; les grandes entreprises ont besoin d'un abonnement payant.

Dois-je apprendre Docker pour créer une appli avec l'IA ?

En général non. Beaucoup de créateurs d'applis par IA gèrent les conteneurs à votre place. Il est utile de savoir ce qu'est un Dockerfile, pour comprendre comment un backend est empaqueté et pour pouvoir faire tourner l'appli ailleurs si vous l'exportez.

Mythex · Pricing · Créez tout avec l'IA · Modèles de sites et d'applications · Mythex comparé · Glossaire de la création d'applications avec l'IA · Outils gratuits pour créer des applications avec l'IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)