Docker

Docker Multi Stage Builds

Le multi-stage builds est une fonctionnalité très intéressante présente dans Docker depuis la release 17.05. Elle permet de décrire dans un dockerfile 2 images l’une à la suite de l’autre. La première image ne sert qu’à constuire les données nécessaires à l’utilisation de la deuxième. Par exemple pour un programme en golang on aura besoin que la première image possède le compilateur go, git, et diverses bibliothèques qui permettront de générer le binaire executable.

Isso un gestionnaire de commentaire avec Hugo et Docker

Suite à cette présentation de isso ( Installation d’une alternative open-source à Disqus) j’ai décidé de le mettre en place sur Hugo et docker swarm. J’ai pour cela créé un dockerfile de isso afin qu’il tourne sur mon infra ARM64 : https://github.com/fredix/dockerfile/tree/master/isso . Le fichier entrypoint.sh est directement pris de ce dépôt git : https://github.com/SISheogorath/isso-docker il faut ensuite le modifier afin de préciser les variables host et name. Dockerfile.arm64 FROM arm64v8/python:3.

déploiement continu avec drone sur ARM64

Cet article est une mise à jour du déploiement continu avec drone. Cette fois-ci l’idée est d’utiliser des serveurs en ARM64 disponible chez sacleway. J’utilise toujours une infra docker swarm comme présenté dans cet article auto-hébergement hybride mais à cause de certaines spécifités de l’ARM64 je vais repartir de zéro. Scaleway J’utilise des serveurs baremetal ARM64-2GB car pour le même prix qu’un VPS on a ici un quad core physique ce qui est bien plus efficace qu’une VM à mon sens.

un plugin drone pour telegram

Voici la suite de notre déploiement continu avec drone. Maintenant que tout fonctionne, on souhaite pouvoir lancer un git push et aller boire son café pépère pendant que drone build et déploie en production. Cependant il serait bien d’être alerté de la réussite ou pas de l’opération. Drone propose divers plugins pour cela, dont un pour Telegram. Les plugins Slack ou Hipchat sont sans doute plus connus pour informer une team via une notification, mais personnellement j’ai une préférence pour Telegram qui propose un excellent client desktop en plus des smartphones.

déploiement continu avec drone

Suite de l’article sur l’auto hébergement hybride , voici une présentation de l’outil de déploiement continu drone.io idéal pour déployer dans une infrastructure docker. Je vais prendre comme exemple de déploiement mon blog qui utilise hugo un serveur de blog statique (pas de sgbd) en Golang. Outre les avantages de go (un binaire statique, rapide, léger), il permet d’écrire ses pages au format makdown. La première partie avec un déploiement manuel puis celle automatisée avec drone.

auto-hébergement hybride

Dans la série sur Docker, voici un nouvel article sous un titre un peu étrange qui éveillera sans doute votre curiosité et c’est bien le but. Disclamer : cet article est tout frais la peinture n’est pas sèche, avec le temps son contenu sera modifié. Historique Pour les geeks sortant d’un caisson cryogénique, voici les 2 premiers lien expliquant ce qu’est l’auto-hébergement : auto-hebergement et sur wikipedia. En résumé cela consiste à héberger ses données sur ses machines personnelles chez soi au lieu de les stocker chez Google, Facebook, Apple, etc.

beego caddy docker

Voici un nouvel article sur Docker qui fait suite à docker et macos. Cette fois-ci un usage réel, avec le développement d’un simple site web statique déployé dans un conteneur docker et publié par le serveur web caddy. J’utilise un poste de travail sous Linux/Fedora avec les packages golang et docker de la distribution. Beego Beego est un framework web en Golang. Golang est un langage que j’apprécie énormement, il fera peut être l’objet d’un article mais on peut le résumer en ces quelques termes : compilé, statique (binaire non dynamique), multiplateforme (windows,mac,linux), multiarchitecture (X86, ARM) , très performant, simple, efficace, concurrent ; go by example donne des exemples du langage et pour des exemples web https://gowebexamples.

Docker et MacOS

Cet article débute sans doute une série dédiée à Docker. En effet aucun admin sys et développeur n’a pu ignorer l’existence de cette technologie en train de révolutionner notre métier. Je ne vais pas ressasser sur Docker ce que l’on trouve déjà partout sur Internet, pour résumer, il fourni les outils au codeur de développer dans un environnement qui sera identique à la production, et de mettre lui même en production.