RousselTMLEARNING

TP · Vagrant : de la découverte à l'expertise

TP : Ma première machine virtuelle avec Vagrant

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. 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 box bento/ubuntu-24.04.
  2. 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. 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. 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

  • ⏱ Durée estimée : ≈ 25 min

Connectez-vous pour suivre votre progression et prendre des notes. Se connecter

✉️ Poser une question

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...