Dockerisation d'un Projet Angular

Introduction
Dans ce tutoriel, nous allons apprendre à contenir un projet Angular avec Docker.
L'objectif est de partir d'un projet Angular existant et de créer une image Docker permettant de l'exécuter facilement.
Ce que nous allons faire :
- Créer un projet Angular (si besoin).
- Écrire un Dockerfile pour builder et servir l'application.
- Construire l'image Docker et exécuter le conteneur.
- Tester l'application Angular dans un navigateur.
Partie 1 : Prérequis
Avant de commencer, assurez-vous d’avoir Node.js installé sur votre machine :
Vérification de Node.js :
Sortie attendue :Si Node.js n'est pas installé, consultez Installation de Node.js
Partie 2 : Création d'un Projet Angular
Si vous avez déjà un projet Angular, passez à la Partie 3.
Étape 2.1 : Installer Angular CLI
Étape 2.2 : Créer un Projet Angular
Sélectionnez : - CSS pour les styles. - Pas de routing (ou oui selon votre besoin).Étape 2.3 : Lancer le Serveur Angular en Local
L'application est accessible sur :Info
À ce stade, l'application fonctionne, mais elle dépend de Node.js. Nous allons maintenant la dockeriser.
Partie 3 : Dockerisation d'Angular
Étape 3.1 : Générer les fichiers de build Angular
Étape 3.1 : Écrire le Dockerfile
Dans le dossier du projet, créez un fichier Dockerfile :
Ajoutez ce contenu :
FROM node:alpine
WORKDIR /usr/src/app
COPY . /usr/src/app
RUN npm install -g @angular/cli
RUN npm install
CMD ["ng", "serve", "--host", "0.0.0.0"]
Partie 4 : Construction et Exécution du Conteneur
Étape 4.1 : Construire l’Image Docker
Info
Docker va télécharger les dépendances et compiler Angular. Cela peut prendre du temps la première fois.
Étape 4.2 : Lancer le Conteneur
Partie 5 : Tester l'Application Dockerisée
Étape 5.1 : Vérifier si le Conteneur Tourne
Sortie attendue :Étape 5.2 : Ouvrir l'Application
Allez sur :
Vous devriez voir l'application Angular fonctionner !Info
Si l’application ne s’affiche pas, vérifiez que le conteneur est bien lancé avec docker ps.
Exercice Pratique
Objectif
- Créer un autre Dockerfile qui utilise un framework web d'un autre language (python, php, java, etc) (Vous devez aussi récupérer des sources, que ce soit le projet par defaut ou un projet sur lequel vous avez déjà travaillé).
- Construire et exécuter l’image.
- Tester si l’application s’affiche sur
http://localhost:8081.