introduction
Vagrant est un outil utilisé pour créer et configurer des environnements de développement légers, reproductibles et portables. Dans ce guide rapide, nous expliquons comment provisionner une machine avec Vagrant sur des serveurs Vultr.
Remarque: ce didacticiel suppose que VirtualBox et Vagrant sont déjà installés sur votre ordinateur local.
Installation
Effectuez les actions ci-dessous à partir du terminal sur votre machine locale:
- Installer le plugin Vagrant Vultr
vagrant plugin install vagrant-vultr
- Créer un répertoire pour héberger un projet de test et y insérer un CD
mkdir test_project && cd test_project
- Exécuter
vagrant init
- Cela crée un VagrantFile qui contiendra les paramètres du serveur d'approvisionnement.
- Ouvrez VagrantFile et remplacez la ligne
config.vm.box = "base"
par ci-dessous:
Remarque: remplacez «YOUR_TOKEN» ci-dessous par votre jeton de Vultr Admin -> Paramètres -> API
config.vm.provider :vultr do |vultr, override|
override.ssh.private_key_path = '~/.ssh/id_rsa'
override.vm.box = 'vultr'
override.vm.box_url = 'https://github.com/p0deje/vagrant-vultr/raw/master/box/vultr.box'
vultr.token = 'YOUR_TOKEN' #You can also use VULTR_TOKEN environment variable
vultr.region = 'Atlanta'
vultr.plan = '768 MB RAM,15 GB SSD,1.00 TB BW'
vultr.os = 'Ubuntu 14.04 x64'
end
- Exécutez
vagrant up --provider=vultr
et regardez une nouvelle instance de 768 Mo de RAM et 15 Go SSD sur votre compte Vultr.
À noter
- La documentation de l'API Vultr est votre amie ... vous trouverez ici des points de terminaison qui révèlent des informations sur les valeurs appropriées à utiliser pour des paramètres tels que région , plan et système d' exploitation .
-
Pour les petits projets, vous aurez probablement un paramètre plus proche de ci-dessous dans votre fichier Vagrant afin que l'exécution vagrant up loc
provisionne votre environnement localement et exécute vagrant up prod --provider=vultr
la même machine sur Vultr.
config.vm.define :loc do |loc_config|
loc_config.vm.box = 'bento/ubuntu-14.04'
loc_config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", 768]
vb.customize ["modifyvm", :id, "--cpus", 1]
end
loc_config.vm.provision "shell", inline: "echo 'export ENV=loc' >> ~/.profile", run: "always"
loc_config.vm.provision "shell", path: "./provision.sh"
end
config.vm.define :prod, autostart: false, primary: false do |prod_config|
prod_config.vm.provider :vultr do |vultr, override|
override.ssh.private_key_path = '~/.ssh/id_rsa'
override.vm.box = 'vultr'
override.vm.box_url = "https://github.com/p0deje/vagrant-vultr/raw/master/box/vultr.box"
vultr.token = 'YOUR_TOKEN' #You can also use VULTR_TOKEN environment variable
vultr.region = 'Atlanta'
vultr.plan = '768 MB RAM,15 GB SSD,1.00 TB BW'
vultr.os = 'Ubuntu 14.04 x64'
end
prod_config.vm.provision "shell", inline: "echo 'export ENV=prod' >> ~/.profile", run: "always"
prod_config.vm.provision "shell", path: "./provision.sh"
end
Conclusion
Vagrant est un outil qui réduit considérablement le temps nécessaire pour provisionner les serveurs localement (ou sur votre instance de cloud Vultr). Il peut être utilisé pour configurer très rapidement des environnements de test et de transfert sur votre compte cloud Vultr.
Écrit par Lami Adabonyan