@ContainerDay16 @ModuloM @jpthiery @kodokojo
De la construction au déploiement
d’applications avec des containers
Antoine Le Taxin

Jean-Pascal Thiery
Agenda
@ContainerDay16 @ModuloM @jpthiery @kodokojo
•Génèse
•Architecture
•Démo Kodo Kojo
•Travailler avec les containers
•Démo test d’intégration
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Antoine Le Taxin
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Jean-Pascal Thiery
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Dark ages du devOps 
• Sprint 0
• Pas le choix des outils
• Faire la queue dans le bureau du SI ou la méthode ninja ?
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Démocratisation des containers 
• Conteneuriser des agents de build
• Conteneuriser le Jenkins
• Conteneuriser toute une usine logicielle ?
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Germination de l’écosystème des conteneurs
• Piloter un ensemble de containers sur un ensemble de machines

• Outils d’infrastructure



@ContainerDay16 @ModuloM @jpthiery @kodokojo
Et paf
• Une usine partageable et utilisable par tous

• Simplicité d’utilisation avec une UI centralisée

• Kodo Kojo, une usine Open Source en 3 clics !



@ContainerDay16 @ModuloM @jpthiery @kodokojo
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Démo time !
Kodo Kojo, son architecture
@ContainerDay16 @ModuloM @jpthiery @kodokojo
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Super, mais…
Comment travailler avec
des containers ?
Synergie front / back ?
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Faire une image du front pour le backeux
C’est l’image qui prend en charge la gestion des 

versions des dépendances





Les tests et les étapes de build conditionnent la création de
l’image





Facilite le partage de la partie front pour le reste de l’équipe
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Faire « une » image du back pour le fronteux
Pas besoin d’installer tous les outils pour développer la partie front



Grâce à docker-compose, on peut facilement lancer 

toutes les images qui constituent la stack back



Une flexibilité qui permet de lancer un back utilisant

un cluster local ou un cluster dans le cloud



Facilite l’accès aux logs de la partie back
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Tests d’intégration
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Tu te mock ?


Avoir la main sur le comportement des scénarios de tests




Implémenter tous les comportements de tous les outils…

et les maintenir tout le temps
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Lancer chaque type de service sur le poste


Pouvoir lancer de vrais tests d’intégration





Maintenir les versions à jour





Il faut s’assurer à la main de l’état initial entre chaque test
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Les containers à la rescousse !
Pouvoir lancer les tests de la même manière quel que soit
l’environnement

L’état initial d’un test est reproductible très facilement





Pouvoir paralléliser l’exécution des tests


Introduit de la complexité (gestion réseau, logs, …)
@ContainerDay16 @ModuloM @jpthiery @kodokojo
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Démo time !
épisode 2
Utilisez et contribuez
https://github.com/kodokojo



https://gitter.im/kodokojo/kodokojo
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Licence Open Source GPLv3
Processus de contribution C4

(The Collective Code Construction Contract)

@ContainerDay16 @ModuloM @jpthiery @kodokojo
Des questions ?
@ContainerDay16 @ModuloM @jpthiery @kodokojo
Merci !
@ContainerDay16 @ModuloM @jpthiery @kodokojo
De la construction au déploiement
d’applications avec des containers
Antoine Le Taxin

Jean-Pascal Thiery

Paris Container Day 2016 : De la construction au déploiement d’applications avec des containers (Kodo Kojo)