Développement

Vagrant – récupération d’une VM VirtualBox perdue

Depuis mon passage à Windows 7/8, Vagrant perd toutes les VMs VirtualBox que je mets en pause. Ce problème peut également arriver si votre machine host plante ou même en changeant de console shell ! :-( Ce problème se traduit par la création et la provision d'une nouvelle VM lors de l'exécution de la commande vagrant up ou vous pouvez le constater avec la commande suivante : $ vagrant status Current machine states: default not created (virtualbox) The environment has…
Lire d'avantage
Développement

Vagrant – impossible de redémarrer une VM VirtualBox sous MS Windows

Parfois, Vagrant est susceptible et refuse de redémarrer votre VM VirtualBox : $ vagrant up Bringing machine 'default' up with 'virtualbox' ==> default: Checking if box 'ubuntu/trusty64' is up to ==> default: A newer version of the box 'ubuntu/trusty64' is available! You currently ==> default: have version ''. The latest is version ''. Run ==> default: `vagrant box update` to update. ==> default: Resuming suspended ==> default: Booting ==> default: Waiting for machine to boot. This may take a few…
Lire d'avantage
Développement

Docker – répertoire Windows partagé dans boot2docker

Comme vous avez pu le supposer avec mon dernier billet, je me suis mis sérieusement à Docker. Travaillant sous Windows (oui, chacun son fardeau !), nous devons utiliser boot2docker pour construire des images et déployer des containers. Boot2docker est une VM GNU/Linux très petite (environ 20Mo) pour VirtualBox qui contient le serveur et le client Docker pour construire des images et manipuler des containers. Quand on commence à jouer avec Docker, on récupère des images sur les dépôts distants. On…
Lire d'avantage
Développement

Vagrant – support de Bower pour vagrant-cachier

Je vous ai récemment présenté comment réduire considérablement le temps de provision de vos VMs en utilisant vagrant-cachier. Alors que j'ai dû faire de nombreux essais avant de réussir à monter une VM utilisant Bower, je me suis rendu-compte que ce gestionnaire de paquets n'était pas supporté par le plugin vagrant-cachier. J'ai donc créé un fork du projet, ajouté le support de Bower et proposé une pull request. Après une petite correction sur la documentation, ma pull request a été…
Lire d'avantage
Développement

Vagrant – Node.js et Bower sur Ubuntu 14.04

Une fois n'est pas coutume. Nous allons encore traiter des difficultés qui peuvent tourner autour de Vagrant. Même si ce n'est pas spécialement Vagrant qui est en cause. Récemment, j'ai été amené à automatiser l'installation de l'API Console pour RAML. Pour celà, il faut installer , NPM, Grunt et Bower. Première version VagrantFile : ("2") do |config| = "ubuntu/trusty32" "forwarded_port", guest: 9000, host: 9000 "forwarded_port", guest: 35729, host: 35729 :shell, :path => "; end : apt-get -y install nodejs npm…
Lire d'avantage
Développement

Vagrant – la provision à très grande vitesse

Si vous commencez avec Vagrant, vous devez faire de nombreux essais et enchainner les vagrant destroy --force && vagrant up ! Cet outil est censé faire gagner du temps à tout le monde. Pourtant, votre consommation de café a sûrement augmenté. En effet, la configuration de vos VMs est automatisée. Votre tâche de création d'environnement de développement est donc plus rapide et plus robuste. Cependant, l'étape de téléchargement des packages (via un gestionnaire de paquets tel que APT, Composer, NPM,…
Lire d'avantage
Développement

Vagrant – guest machine entered an invalid state

Vous venez d'installer VirtualBox et Vagrant. Vous êtes prêt à entrer dans le monde de la virtualisation facile. Vous saisissez la fameuse commande vagrant up. C'est alors que la console vous répond ce message : Bringing machine 'default' up with 'virtualbox' ==> default: Importing base box 'ubuntu/trusty32'... ==> default: Matching MAC address for NAT ==> default: Checking if box 'ubuntu/trusty32' is up to ==> default: Setting the name of the VM: vm-trusty32_default_1411046289230_861 ==> default: Clearing any previously set forwarded ==>…
Lire d'avantage
Développement

Vagrant – une box sur un répertoire partagé

Vous créez peut-être vous même des box Vagrant pour les partager avec vos équipes de développement. Pour cela, il est possible de déposer vos box sur un serveur HTTP ou dans un dossier partagé. La réutilisation d'une box personnalisée est très simple et se fait ainsi pour un serveur HTTP : ("2") do |config| = "mycompany/trusty32" = "; end Sur un dossier partagé, le fichier de configuration ressemblera à ceci : ("2") do |config| = "mycompany/trusty32" = "file://\\\\myserver/mysharedfolder/; end Cependant,…
Lire d'avantage
Développement

Vagrant – JDK Oracle sur Ubuntu

Récemment, j'ai voulu créer une box Vagrant contenant un environnement de développement Java prêt à l'usage. Sur GNU/Linux, il existe deux possibilités pour le JDK : OpenJDK Oracle JDK Souhaitant rester au plus proche de la version de production, j'ai décidé d'installer la version d'Oracle. Cette version n'est pas disponible sur les dépôts officiels d'Ubuntu. Il faut passer par les dépôts PPA. Création de la VM Déclaration La déclaration de la box est assez simple avec le fichier VagrantFile :…
Lire d'avantage
Développement

Vagrant – la virtualisation des environnements de développement facile

Ne vous est-il jamais arrivé de ne pas être capable de reproduire, sur votre environnement de développement, un bug rencontré en production ? Vous êtes sûrement sous MS Windows ou Mac OS X alors que la production tourne sous Ou ne vous est-il pas arrivé de pester pour écrire ou suivre un guide d'installation d'un environnement de développement ? Depuis quelques années, les VMs sont là pour répondre à ces problématiques. Néanmoins, ces outils ne sont pas toujours simple à…
Lire d'avantage