Your SlideShare is downloading. ×
0
Vagrant
Construire des environnements de
développement virtualisés
Human Talks - Paris - 9 juillet 2013
Julien Dubreuil
Développeur PHP / Drupal
Commerce Guys
Animateur du groupe utilisateur Drupal à Paris
@juliendubreuil
www....
Quelques constats
Vagrant, c'est quoi ?
Vagrant comment ça marche ?
SOMMAIRE
Quelques constats simples
PROBLÈME #1
Accueillir un nouveau développeur
- Un poste à configurer
- Des projets à installer
=
Une journée de perdue
Uniformité des environnements
“Pourtant ça marche chez moi”
Environnement Développeur
!=
Environnement Dev
!=
Environnemen...
PROBLÈME #3
Faire cohabiter différents environnements
PHP
5.2
PHP
5.3
PHP
5.4
MySQL
5.20
MySQL
5.33
MongoDB
2.2.5
MongoDB
...
Pas d'isolation
PROBLÈME #4
Espace
utilisateur
OS
PHP
PHP
Storm
FilesMySQL Apache
MongoDB
Mail
Chrome Firefox
http://jrcommercialcleaning.com
CONSTATS
Pas d'isolation
Pas exportable
Compliqué à installer / réinstaller
Espace
utilisateur
VIRTUALISATION
OS
VM
PHP
PHP
Storm
Files
MySQL
Apache
MongoDB
Mail
Chrome
Firefox
Virtualisation
Exportable
Isolation Hôte / VM
Simple à installer
Simple à utiliser
Compliqué à faire évoluer
SOLUTION ?
+
...
Vagrant
" Vagrant est un fantastique outil pour configurer,
administrer et distribuer des machines virtuelles via
une interface si...
VAGRANT
Vagrant
INDÉPENDANCE
La machine hôte n'est pas
polluée
UNIFORMITÉ
Les développeurs ont la même
configuration
CONFI...
Répertoire
partagé
FONCTIONNALITÉS
Provisionning
automatisé
Port
forwarding
VirtualBox
VMWare
Accès SSH
Configuration
du r...
VAGRANTFILE
Vagrantfile est à Vagrant ce que Makefile est au
Make
Description de la VM dans du code.
Un fichier par répert...
VAGRANT : BOXES
BOX = Environnement pré-installé
Des boxes prêtes à l'emploi : http://vagrantbox.es
- Debian
- Ubuntu
- Ce...
VAGRANTFILE
Vagrant.configure("2") do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://example.com/precise...
VAGRANTFILE - SHARED FOLDER
Vagrant.configure("2") do |config|
# Add a shared folder
config.vm.synced_folder "src/", "/src...
Vagrant.configure("2") do |config|
# Network configuration
config.vm.network :private_network, ip:
"192.168.50.4"
# Port f...
COMMENT ÇA MARCHE
VAGRANT BOX
(Os image)
VAGRANTFILE
(Configuration)
VAGRANT
(CLI + API)
VIRTUAL BOX
(VM management)
VM
vagrant init
vagrant add box Precise64 http:/.../precise64.box
vagrant up
DÉMARRER LA MACHINE
$ vagrant --help
vagrant box
vagrant destroy
vagrant halt
vagrant init
vagrant provision
vagrant reload
vagrant resume
vag...
VAGRANT
+ Exportable
+ Isolation Hôte / VM
+ Simple à installer
+ Simple à utiliser
+ Simple à faire évoluer
PROBLÈME RÉSO...
Le site officiel
- http://www.vagrantup.com/
Des squelettes de boxes prêtes à l'emploi
- http://www.vagrantbox.es/
Veewee ...
Questions ?
Merci !
@juliendubreuil
www.juliendubreuil.fr
dubreuil.julien@gmail.com
Upcoming SlideShare
Loading in...5
×

Vagrant - Concept

820

Published on

Vagrant - Pourquoi ? Qu'est-ce que c'est ? Comment ça marche ?

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
820
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
31
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Vagrant - Concept"

  1. 1. Vagrant Construire des environnements de développement virtualisés Human Talks - Paris - 9 juillet 2013
  2. 2. Julien Dubreuil Développeur PHP / Drupal Commerce Guys Animateur du groupe utilisateur Drupal à Paris @juliendubreuil www.juliendubreuil.fr dubreuil.julien@gmail.com
  3. 3. Quelques constats Vagrant, c'est quoi ? Vagrant comment ça marche ? SOMMAIRE
  4. 4. Quelques constats simples
  5. 5. PROBLÈME #1 Accueillir un nouveau développeur - Un poste à configurer - Des projets à installer = Une journée de perdue
  6. 6. Uniformité des environnements “Pourtant ça marche chez moi” Environnement Développeur != Environnement Dev != Environnement Prod PROBLÈME #2
  7. 7. PROBLÈME #3 Faire cohabiter différents environnements PHP 5.2 PHP 5.3 PHP 5.4 MySQL 5.20 MySQL 5.33 MongoDB 2.2.5 MongoDB 2.4.5
  8. 8. Pas d'isolation PROBLÈME #4 Espace utilisateur OS PHP PHP Storm FilesMySQL Apache MongoDB Mail Chrome Firefox
  9. 9. http://jrcommercialcleaning.com
  10. 10. CONSTATS Pas d'isolation Pas exportable Compliqué à installer / réinstaller
  11. 11. Espace utilisateur VIRTUALISATION OS VM PHP PHP Storm Files MySQL Apache MongoDB Mail Chrome Firefox
  12. 12. Virtualisation Exportable Isolation Hôte / VM Simple à installer Simple à utiliser Compliqué à faire évoluer SOLUTION ? + - + + +
  13. 13. Vagrant
  14. 14. " Vagrant est un fantastique outil pour configurer, administrer et distribuer des machines virtuelles via une interface simple en ligne de commande. " Par Mitch Hashimoto and John Bender VAGRANT
  15. 15. VAGRANT Vagrant INDÉPENDANCE La machine hôte n'est pas polluée UNIFORMITÉ Les développeurs ont la même configuration CONFIGURABLE Toute la configuration réside dans des fichiers VERSIONNABLE RAPIDE À DÉPLOYER 3 commandes avant de commencer à travailler SIMPLE À UTILISER Pas besoin d'être SysAdmin ou DevOps
  16. 16. Répertoire partagé FONCTIONNALITÉS Provisionning automatisé Port forwarding VirtualBox VMWare Accès SSH Configuration du réseau
  17. 17. VAGRANTFILE Vagrantfile est à Vagrant ce que Makefile est au Make Description de la VM dans du code. Un fichier par répertoire / projet
  18. 18. VAGRANT : BOXES BOX = Environnement pré-installé Des boxes prêtes à l'emploi : http://vagrantbox.es - Debian - Ubuntu - CentOS - ... VEEWEE
  19. 19. VAGRANTFILE Vagrant.configure("2") do |config| config.vm.box = "precise64" config.vm.box_url = "http://example.com/precise64.box" end
  20. 20. VAGRANTFILE - SHARED FOLDER Vagrant.configure("2") do |config| # Add a shared folder config.vm.synced_folder "src/", "/src/website" end VM Host /home/vagrant/folder /home/bob/folder
  21. 21. Vagrant.configure("2") do |config| # Network configuration config.vm.network :private_network, ip: "192.168.50.4" # Port forwarding config.vm.network :forwarded_port, guest: 80, host: 8090 end VAGRANTFILE - NETWORK & PORT FORWARDING VM Host 80 8090 3306 13306
  22. 22. COMMENT ÇA MARCHE VAGRANT BOX (Os image) VAGRANTFILE (Configuration) VAGRANT (CLI + API) VIRTUAL BOX (VM management) VM
  23. 23. vagrant init vagrant add box Precise64 http:/.../precise64.box vagrant up DÉMARRER LA MACHINE
  24. 24. $ vagrant --help vagrant box vagrant destroy vagrant halt vagrant init vagrant provision vagrant reload vagrant resume vagrant ssh vagrant status vagrant suspend vagrant up COMMANDES
  25. 25. VAGRANT + Exportable + Isolation Hôte / VM + Simple à installer + Simple à utiliser + Simple à faire évoluer PROBLÈME RÉSOLU ? + + + + +
  26. 26. Le site officiel - http://www.vagrantup.com/ Des squelettes de boxes prêtes à l'emploi - http://www.vagrantbox.es/ Veewee un outil pour construire vos boxes Vagrant. - https://github.com/jedi4ever/veewee RESSOURCES
  27. 27. Questions ?
  28. 28. Merci ! @juliendubreuil www.juliendubreuil.fr dubreuil.julien@gmail.com
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×