🐳 Docker
Docker permet de créer, déployer et exécuter des applications dans des conteneurs. Cette page montre un workflow simple avec Node.js.
🛠️ Installation
Pour commencer, assurez-vous d'avoir Docker installé sur votre système. Vous pouvez télécharger Docker Desktop pour votre système d'exploitation sur le site officiel de Docker.
🟩 Création d'un Dockerfile
Pour conteneuriser une application Node.js, créez un fichier Dockerfile à la racine de votre projet :
FROM node:22-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["npm", "start"]🟩 Construction de l'image
Pour construire l'image Docker, exécutez la commande suivante :
docker build -t mon-app-nodejs .🟩 Exécution du conteneur
Pour démarrer votre application dans un conteneur :
docker run -p 3000:3000 mon-app-nodejs🧪 Bonnes pratiques
- Utilisez une image Node.js LTS encore supportée (
node:22-alpine,node:24-alpine, etc.). - Optimisez la taille de l'image avec un
.dockerignore. - Utilisez des images multi-stage pour la production.
- Gérez correctement les variables d'environnement.
- Implémentez la surveillance de la santé de l'application.
🟩 Docker Compose
Pour les applications plus complexes, utilisez Docker Compose :
services:
app:
build: .
ports:
- "3000:3000"
environment:
NODE_ENV: productionAvec Docker Compose v2, le champ version: n'est plus nécessaire pour ce
type de fichier et il est généralement omis.
🟩 Déploiement
Pour déployer votre application conteneurisée :
- Poussez votre image vers un registre Docker.
- Configurez votre environnement de production.
- Utilisez des outils d'orchestration comme Kubernetes si nécessaire.
🟩 Dépannage
- Vérifiez les logs avec
docker logs. - Inspectez les conteneurs avec
docker inspect. - Utilisez
docker execpour accéder au shell du conteneur.
Tooling
Terminez le quiz du chapitre pour le marquer comme complété.
🔗 REST Client
REST Client est une extension VS Code qui permet d'exécuter des requêtes HTTP dans des fichiers .http ou .rest, directement depuis l'éditeur.
🧰 React & Frontend
Dans cette section, nous allons explorer les extensions essentielles pour le développement React et Frontend qui amélioreront considérablement votre productivité.