Ce que vous allez apprendre dans ce TP
- Créer une VM à partir d'un Vagrantfile
- Utiliser le dossier partagé et la redirection de port
- Détruire proprement
Création de la machine #
Ce que vous allez apprendre dans cette section
- Créer une VM à partir d'un Vagrantfile
- Utiliser le dossier partagé et la redirection de port
- Détruire proprement
Contexte. Vous rejoignez un projet dont l'environnement de développement s'installe avec une page de wiki de 40 lignes, que personne n'arrive à suivre. Vagrant permet de décrire la machine dans un fichier et de la recréer à l'identique en une commande : vous démarrez par la machine la plus simple.
Prérequis : VirtualBox (ou libvirt) et Vagrant installés · Durée estimée : 25 min
Du Vagrantfile à la machine en fonctionnement.1. Initialiser le projet
Pourquoi ? Le Vagrantfile est la seule source de vérité : toute l'équipe obtient la même machine à partir du même fichier versionné.
Créez un dossier de travail et générez un Vagrantfile basé sur la boxbento/ubuntu-24.04.2. Démarrer et se connecter
Pourquoi ? Démarrer puis se connecter vérifie que la box, le provider et le réseau fonctionnent avant d'investir du temps dans la configuration.
Démarrez la machine, ouvrez une session SSH et vérifiez le système.3. Dossier partagé et réseau
Pourquoi ? Le dossier partagé évite de copier du code dans la VM, et la redirection de port permet de tester depuis votre navigateur comme avec une vraie application.
Servez un fichier du dossier du projet depuis la VM et exposez le port 8080 sur l'hôte.4. Nettoyer
Pourquoi ? Détruire la machine est un geste normal : la reproductibilité signifie qu'on peut la recréer à tout moment, la box téléchargée restant en cache.
Arrêtez puis supprimez la machine. Que reste-t-il sur le disque ?
Niveau de difficulté : ●○○○○ (1/5)
Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
Articles recommandés
Linux vs Unix : Le Guide Complet des Commandes et Distributions
Comprenez les différences entre Linux et Unix, explorez les distributions (serveur, desktop, ligh...
Ansible : l'inventaire (statique, dynamique, groupes et variables)
Comprendre et maîtriser l'inventaire Ansible : fichiers INI et YAML, groupes, variables d'hôte et...
Ansible : les commandes Ad-Hoc
Exécuter des actions immédiates sur un parc de serveurs avec ansible : modules ping, command, she...
Ansible : structurer son code avec les rôles
Créer, organiser et réutiliser des rôles Ansible : arborescence, defaults, tasks, handlers, templ...
Ansible : générer des fichiers dynamiques avec Jinja2 et les facts
Créer des fichiers de configuration dynamiques : templates Jinja2, variables, facts, filtres, bou...
Ansible : gérer la sécurité (Vault, SSH, privilèges et secrets)
Sécuriser Ansible : Ansible Vault, authentification SSH par clés, become et sudo, no_log, durciss...
Ansible : gérer son infrastructure avec des playbooks (Infrastructure as Code)
Écrire des playbooks de production : structure d'un projet, plays, handlers, tags, strategy seria...
Ansible : piloter ses automatisations avec une interface graphique (AWX, Semaphore, AAP)
Comparer et installer les interfaces graphiques d'Ansible : AWX, Ansible Automation Platform, Sem...
Ansible : aller plus loin (tests, qualité, CI/CD et performance)
Industrialiser Ansible : ansible-lint, yamllint, Molecule, intégration continue, collections, exe...