Picture of Julien Wittouck

Julien WITTOUCK

freelance solution & software architect 🏗 - containers 🐋 & linux 🐧 💙 - teacher & trainer 🎓 @ univ-lille.fr - đŸŽ™ïž speaker

Thoughts

Articles I've written.

Talks

Talks, BBLs, and other conferences.

Jun 29, 2023
Sunny Tech 2023 Cloud Nord 2023

Depuis plusieurs annĂ©es maintenant, Docker est utilisĂ© par toute l’industrie de l’IT pour packager et dĂ©ployer des applications.

Bien que l’écriture d’un Dockerfile soit facile, la construction d’images OCI/Docker reste un exercice compliquĂ©:

  • optimisation des layers de l’image
  • bonne gestion des processus Linux
  • sĂ©paration des phases de build et de run des images
  • bonnes pratiques de sĂ©curitĂ©

Pire, lorsqu’une faille de sĂ©curitĂ© est dĂ©tectĂ© dans une layer basse (distribution ou runtime) d’une image applicative, il faut alors potentiellement reconstruire plusieurs dizaines ou centaines d’images pour y intĂ©grer les version patchĂ©es.

Dans ce talk, nous apprendrons comment les buildpacks permettent de construire des images OCI/Docker sans Dockerfile et bénéficier des bonnes pratiques issues de la communauté open-source.

Nous verrons :

  • ce qu’est une image OCI, une layer, et comment Docker les construit
  • comment analyser le contenu des layers d’une image OCI, et ce qui ne va pas dans les images que nous construisons au quotidien
  • ce qu’est un buildpack et comment un buildpack construit une image OCI
  • avec une dĂ©mo, comment utiliser un buildpack proposĂ© par la communautĂ© open-source pour construire une image OCI contenant une application Java optimisĂ©e
  • enfin, nous verrons comment les buildpacks proposent de rebaser des image, et nous permettre de patcher en masse des images applicatives pour corriger des failles de sĂ©curitĂ©, sans reconstruire complĂštement nos images !

Ce talk est donc Ă  destination des Ops et des Devs qui manipulent Docker au quotidien.

À la sortie de ce talk, je devrai vous avoir convaincu d’abandonner vos Dockerfile et d’expĂ©rimenter les buildpacks !

DevOps Docker Buildpacks
Jun 10, 2022
DevFest Lille 2022

Ce REX présente comment nous utilisons Gitlab, Gitlab-CI et Terraform pour construire une infrastructure GCP en self-service pour nos utilisateurs (squads/projets).

Chez Kiabi, dans le cadre de la migration sur le cloud GCP (depuis l’étĂ© 2021), nous mettons Ă  disposition de nos dĂ©veloppeurs une project-factory, en self-service, pour de l’infrastructure cloud (VM/Databases/Buckets etc
). Le but est d’accĂ©lĂ©rer les phases de dĂ©marrage des projets, en rendant autonomes au maximum les dĂ©veloppeurs sur le provisionning de l’infrastructure essentielle Ă  leurs dĂ©veloppements.

Nous allons voir dans ce REX comment nous avons assemblé le module Terraform google-project-factory avec Gitlab et Gitlab-CI pour:

  • crĂ©er des projets sur GCP pour plusieurs environnements en quelques minutes
  • fournir des templates de code Terraform prĂȘts Ă  l’emploi sur Gitlab Ă  nos dĂ©veloppeurs
  • utiliser des pipelines Gitlab-CI pour exĂ©cuter le code Terraform et provisionner l’infrastructure de nos projets

Tout cela accompagnĂ© d’une dĂ©mo:

  • lancement de la project-factory (code terraform + pipeline) pour crĂ©er un projet GCP + Gitlab
  • crĂ©ation de ressources (code terraform) dans le projet GCP nouvellement crĂ©Ă©

Ce REX est destinĂ© aux dĂ©veloppeurs curieux de l’infrastructure as code, quelques notions de Terraform, Gitlab et GCP sont les bienvenues pour bien le comprendre.

DevOps Gitlab GCP Terraform
Axa Web Center Lille (Apr 27, 2023) Ippon Lille (May 15, 2023) ADEO Tech Bubble (Jun 7, 2023)

Bien que Docker soit facile d’utilisation, construire une image reste un exercice compliquĂ©.

Optimisation, layers, configuration, haute disponibilitĂ© et sĂ©curitĂ© nĂ©cessitent de s’abstraire des Dockerfile basiques qu’on peut trouver sur internet.

Dans ce talk, nous verrons comment bien packager une application Spring Boot dans une image Docker/OCI.

À travers 42 bonnes pratiques, nous allons voir :

  • les bonnes pratiques prĂ©conisĂ©es par Spring 🍃
  • les piĂšges Ă  Ă©viter 👿
  • comment bien prĂ©parer votre application Spring Boot pour un exĂ©cution dans un container 📩
  • comment bien Ă©crire un Dockerfile pour optimiser la construction et l’image finale 📝
  • des moyens alternatifs de construction d’images Spring Boot 🏗
  • et l’outillage d’analyse Ă  ajouter Ă  votre toolbox 🔧
DevOps Spring Boot Docker Kubernetes

My Projects

GitHub repositories that I've built.

GitLab Classroom is a modest clone of Github Classroom, aimed at GitLab.
Java
Gaia is a Terraform 🌍 UI for your modules, and self-service infrastructure đŸ‘šâ€đŸ’»
gaia-runner is the service that runs the Terraform jobs in Gaia.
reveal.js plugin that allows adding quiz as slides.
TypeScript

Github stats

GitHub stats for all my contributions.

My Interests

Topics that I want to learn more about.