====== Vagrant ======
==== Utilisation de base ====
Dans un dossier défini (va créer un dossier ''.vagrant'').
vagrant init
Crée un fichier ''Vagrantfile'' à compléter.
Choisir une box ([[https://app.vagrantup.com/#__do_not_save__|catalogue]]), par exemple ''generic/debian11''.
vagrant up # lance la VM
vagrant ssh # ouvre un shell en SSH sur la VM
vagrant halt # arrête la VM
vagrant destroy # détruit la VM
==== Changer la quantité de RAM allouée à la VM ====
config.vm.provider "virtualbox" do |vb|
vb.memory = "512"
end
==== Réseau ====
=== Définir l'interface qui va servir de bridge ===
config.vm.network "public_network", bridge: "enp0s31f6"
''enp0s31f6'' correspond à l'interface sur la machine hôte qui va servir de bridge.
Pour configurer une IP statique, ajouter le paramètre ''ip: "192.168.1.100"'' à la ligne.
==== Définir le provisionning avec Ansible ====
config.vm.provision "ansible" do |ansible|
ansible.playbook = "playbook.yml"
end
==== Désactiver le partage de dossier par défaut ====
[[https://superuser.com/questions/756758/is-it-possible-to-disable-default-vagrant-synced-folder|Source]]
config.vm.synced_folder '.', '/vagrant', disabled: true
==== Déplacer le dossier .vagrant.d ====
* https://www.vagrantup.com/docs/other/environmental-variables
* [[https://stackoverflow.com/questions/14733681/vagrant-d-outside-of-the-home-folder]]
export VAGRANT_HOME=/chemin/vers/vagrant.d