Project

General

Profile

Wiki » History » Revision 4

Revision 3 (Sofiane Mokrane, 11 Aug 2020 11:50) → Revision 4/7 (Sofiane Mokrane, 11 Aug 2020 12:39)

 
 *Guide d'utilisation de l'outil Vagrant* 

 * Vagrant, un outil pour mettre en place un environnement de développement  
 et de test très rapidement. En effet, Vagrant va vous permettre d'installer  
 et de lancer une machine virtuelle (VM) en quelques lignes de commandes. 
 On va pouvoir y installer une distribution linux et les différents  
 outils de travail. 
 

 Pour nous chez *Kaisensdata*, le but étant de travailler, en développement,  
 dans le même environnement pour faciliter le transfert de codes entre  
 les différents collaborateur et l'exécution ou test de ces derniers. 

  * 

 Pour cela il va nous falloir 2 outils: outils : 

    - VirtualBox pour gérer les VM, lien pour télécharger virtual box 6.0.8 6.0.8: 
       https://www.virtualbox.org/wiki/Download_Old_Builds_6_0 

    - Vagrant : Lien pour télécharger vagrant: 
       https://www.vagrantup.com/downloads 



  * Pour lancer une machine avec vagrant il nous faut un fichier script "Vagrantfile"(sans extension). Le langage utilisé pour le développement du script est le Ruby, mais il n'est pas nécessaire d'avoir des connaissances sur ce langage. Comme exemple de script qu'on va utiliser pour générer nos VM (vous le trouverez en pj dans <Fichies>): 


   Vagrant::Config.run do |config| 
    config.vm.define :web do |web_config| 
     web_config.vm.box = "web" 
     web_config.vm.forward_port 3000, 3000 
   end 
   config.vm.define :db do |db_config| 
     db_config.vm.box = "db" 
     db_config.vm.forward_port 3306, 3306 
   end 
   config.vm.customize [ 
     "--memory", "256" 
   ] 
  end 

  Vagrant.configure("2") do |config| 
   config.vm.box config.vm.define "submiter" do |submiter| 
     submiter.vm.box = "ubuntu/bionic64"     #===> On spécifier la distribution ubuntu à utiliser, on garde bionic64 pour toutes nos vm 
   config.disksize.size 
     submiter.vm.hostname = '20GB'         #===> spécifier la mémoire disque de notre vm 
   config.vm.network "private_network", 'submiter' 
     #dsubmit.vm.provision "docker" 
     submiter.vm.box_url = "ubuntu/bionic64" 
     submiter.vm.synced_folder "C:\\Users\\amokrane\\Desktop\\ansible", "/set" 
     submiter.vm.network :private_network, ip: "192.168.33.102" #==> L'IP de la vm 
   config.vm.provider "virtualbox" "192.168.56.106" 
     submiter.vm.provider :virtualbox do |vb| 
	   vb.memory=4096                           #===> choisir la ram de la Vm |v| 
       v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] 
       v.customize ["modifyvm", :id, "--memory", 4096] 
       v.customize ["modifyvm", :id, "--name", "submiter"] 
       v.customize ["modifyvm", :id, "--cpus", "2"] 
     end 
   end 
   #config.vm.provision :docker                     #===> spéfier 
  end 












 En effet, grâce à Vagrant, vous aller pouvoir spécifier les outils à installer dans ressources  
 de la vm au moment VM (RAM, nombre de la création, ici docker mais on choisir anaconda ou autre  
   #config.vm.provision :docker_compose, yml: "/vagrant/docker-compose.yml", run: "always" #====> on demande coeurs), les redirections de port, les applicatifs  
 à installer un deuxième outil docker_compose 
  end 

  * A l'aide la ligne de commande, on se place etc.  







 Description 

 https://drive.google.com/drive/folders/1CWivvE_9zJIiBNh_8pMnFgBGydLBWDaa?usp=sharing 


 Commande a exécuter dans le répertoire où se trouve le "Vagrantfile" et on lance la création de la vm par la commande suivante : 

  vagrant up  

  * Dans le cas ou vous auriez avez l'erreur que vous trouviez dans l'image ci-jointe, exécutez la commande suivante: 

  ci-jointe 
 bcdedit /set hypervisorlaunchtype off 

  * Dans le lien suivant, vous trouverez les commandes essentielles vagrant qui permettent, l'arrêt, destruction et ...:   

  https://www.drupal.org/node/2008794 

 

  * Ci-après, un lien vers une vidéo expliquant les différentes étapes citées ci-dessus : 
 
  https://drive.google.com/drive/folders/1CWivvE_9zJIiBNh_8pMnFgBGydLBWDaa?usp=sharing