Transcript
Page 1: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Un PaaS Java/docker en 30mn

@treeptikTeam http://www.treeptik.fr Fabien Amico & Nicolas Muller

Page 2: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Tools in Action • Présentation de l’équipe • Le  « Cloud Computing » • Présentation de docker • Historique • Technologies utilisées

• Notre solution : micropaas-maven-plugin • Objectifs • Démo

Page 3: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

L’équipe • Fabien AMICO • @fabienamico • Développeur JEE • CTO Treeptik • 10 ans d’expérience

• Une équipe de 10 personnes spécialisés dans le cloud et java

• Nicolas MULLER • @zepouet • Développeur JEE / Liferay • Dev Mobile • 13 ans d’expérience • Bidouilleur en herbe

Page 4: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Le Cloud Computing

SaaS

PaaS

IaaS

Page 5: Comment développer un PaaS Java en 30 minutes avec docker

@YourTwitterHandle #DVXFR14{session hashtag} @treeptikTeam #micropaas

Présentation de la technologie Docker

Page 6: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Enquête

• Combien de personnes ont déjà entendu parler de docker ?

• Combien de personnes l’ont déjà essayé ?

• Combien de personnes l’utilisent-ils en production ?

Page 7: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Origines de docker

• Projet opensourcé par DotCloud en mars 2013

• Initialement écrit en Python, porté en GO

• 11.000 Stars GitHub

• De nombreux projets l’utilisent : OpenShit, Dokku, CloudUnit…

Page 8: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Prérequis environnement

• Linux Kernel 64 bits > 3.8 • Cgroups • LXC • Namespaces • AUFS

• CLI + API REST

Page 9: Comment développer un PaaS Java en 30 minutes avec docker

@YourTwitterHandle @YourTwitterHandle #YourSessionHashtag

Page 10: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Plugin Maven : MicroPaaS

• Objectif • Utilise une librairie opensource Java pour Docker • Avantages // inconvénients

• Projet présent sur GitHub et déjà accessible •  https://github.com/Treeptik/micropaas-docker-plugin

•  https://github.com/Treeptik/micropaas-docker-vagrant •  https://github.com/Treeptik/micropaas-image

Page 11: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Plugin Maven : Goals

• micropaas:createContainer • micropaas:startContainer • micropaas:deploy (nécessite package) • micropaas:reInitContainer • micropaas:restartContainer • micropaas:stopContainer • micropaas:removeContainer

Page 12: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Plugin Repository

<pluginRepositories> <pluginRepository> <id>micropaas-plugin</id> <url>http://www.treeptik.fr/repository/</url> </pluginRepository>

</pluginRepositories>

Page 13: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Intégration dans pom.xml

<plugin> <groupId>fr.treeptik.micropaas.maven.plugins</groupId> <artifactId>micropaas-maven-plugin</artifactId> <version>0.0.1</version> <configuration> <urlDockerManager>http://192.168.1.103:4243</urlDockerManager> <containerImage>micropaas/tomcat-mysql</containerImage> <containerName>superProjetTest</containerName> <databaseName>super-database</databaseName> </configuration> </plugin>

Page 14: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Plugin Maven : MicroPaas

• Architecture MicroPaaS image • Lancement container via CLI • Intégration Live Plugin MicroPaas

Page 15: Comment développer un PaaS Java en 30 minutes avec docker

@YourTwitterHandle #DVXFR14{session hashtag} @treeptikTeam #micropaas

Page 16: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

title-less slide

Page 17: Comment développer un PaaS Java en 30 minutes avec docker

@treeptikTeam #micropaas

Crédit image / Creative Commons •  Rue pavée — By-Nc-Sa

• http://www.flickr.com/photos/22914687@N05/4957591422/sizes/l/

•  Sous la Tour Eiffel — By-Nc-Sa

• http://www.flickr.com/photos/stewiedewie/244850735/sizes/l/in/photostream/

•  Sous le pont — photo par B.Monginoux - By-Nc-Nd

• http://www.landscape-photo.net/displayimage.php?pid=5194

•  Le Louvre – Photo par Anthony Gaudun - By-Nc-Sa

• http://www.flickr.com/photos/anthonygaudun/7474397964/sizes/o/in/photostream/ •  Slide template created by @glaforge, completed by @nmartignole for Devoxx FR2014


Recommended