Comment remplacer ses VMs locales par des containers sur docker.hub ou Google.cloud

Amoureux de la dématérialisation

Il m'est arrivé une drôle (sic) de mésaventure l'année dernière. Je souhaitais mettre en place une plateforme simple et légère pour enregistrer quelques informations que je trouve utile, à savoir :

  1. les manipulations techniques les plus courantes que je dois retenir dans ma vie de "DevOps"
  2. Les idées démentielle-ment novatrices qui traversent mon esprit toutes les 7 secondes et qui finiront bien par faire de moi le maître du monde (hein "minus"1 ?).

J'ai donc travaillé sur ce qui pourrait servir de blog-recueil d'idées-dépôt documentaire. Me voila donc parti avec une VM virtualbox clonée à partir de ma golden image locale mise à jour quotidiennement par mon petit script maison.

‌                              select vm in $(vboxmanage list vms | grep __BASE | cut -d" " -f1 | sed -e's/\"//g"') do     read -p "what's the new name of your vm ?" vmname;         vboxmanage clonevm ${vm} --name ${vmname} --register         break     done                                      bash

J'y installe un dépôt epel-release, puis à partir de ce dernier j'y installe un dépôt ius. Je continue avec l'installation de php v7.2 et toutes les dépendances utiles pour faire fonctionner le CMS sous php GRAV 2. J'installe enfin le framework bien connu nodejs. Fort de tout ceci je décide de commencer avec l'installation de express avec npm pour finaliser un projet entamé il y a (plus?) d'un an et laissé à l'abandon depuis  trop longtemps. keystone.js supportera la version définitive du projet. J'y ajoute pug pour le traitement des vues.

‌                              yum install -y epel-release yum install -y ius yum install -y php72u  for mod in curl ctype dom gd json mbstring openssl session simplexml xml zip do yum install -y php72u-${mod} done  yum groupeinstall -y "Outils de dévelopement"                                      shell

Et je finalise l'ensemble avec la configuration d'apache avec deux virtualhosts en attendant le reverseproxy de nginx.

Je commence quelques manipulations pour convenir d'un mode de rédaction/édition rapide de mes articles. J'essaye showdownjs pour le traitement de la syntaxe markdown dans mes templates pug. Je stoppe la VM je redémarre...

"Et là, c'est le drame."

-- "télérama" 3

Je contemple une image "Golden"  vierge comme au premier jour. Mais que s'est-il passé? Je n'ai pas remarqué la petite encoche qui permet de restaurer le dernier instantanée en faisant fi des modifications actuelles.

Moralité :

"Haec decies repetita placebit"4

-- Horace

Cela m'inspire deux choses:

  • la première est qu'il faut que j'arrête les citations dans cet articles.
  • la seconde qu'il me faut une solution de sauvegarde automatique pérenne de mes VMs

Facile à dire, mais plus difficile à réaliser. Je pense à plusieurs solutions :

ESX local couplé à mon Synology

  • Quand est-il de l'accès depuis l’extérieur sans VPN ?

Utiliser Gitlab.com

  • La cible est ici le stockage de la VM toute entière ce qui prend beaucoup (trop) de place
  • facile à mettre à jour : git push remote et voila !
  • mais encore trop de manipulations locales, sources de problèmes (snapshot de la vm, déploiement via scripts shell maison, etc ...)
  • Et si Gitlab se fait racheter par Microsoft/IBM ?
  • J'ai cru lire quelque part qu'il était possible de se servir de gitlab/github comme serveur de registry, à voir ...

Utiliser docker.io

  • permet de ne stocker que "la charge utile"
  • permet de "builder" automatiquement la partie nodejs en connectant docker à Gitlab
  • permet le déploiement automatique vers mon vps OVH©
  • vitrine techno

J'opte pour la troisième solution en attendant une méthode mature, robuste et externalisable sur mon compte AWS.

[1]    "Minus" et "Cortex" sont des personnages d'un comic américain (Pinky and the Brain<https://en.wikipedia.org/wiki/Pinky_and_the_Brain>).[2]    En effet j'ai bien l'intention d'y reproduire mon environnement de production OVH qui regroupe fmjconsulting et fredericmariejoseph.info sous un même VPS.[3]    source : article de Télérama[4]    bis repetita placent

Afficher les commentaires