Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Comment Docker révolutionne le web
Search
ubermuda
October 29, 2014
Technology
3
700
Comment Docker révolutionne le web
ubermuda
October 29, 2014
Tweet
Share
More Decks by ubermuda
See All by ubermuda
La théorie des graphes appliquée à Git
ubermuda
0
410
Vers des applications twelve-factor
ubermuda
2
1.1k
Git et la théorie des graph
ubermuda
3
1.1k
Introduction à Docker
ubermuda
6
1.1k
Meetup Docker 101
ubermuda
1
220
A multi-container Symfony2 setup with Docker
ubermuda
40
12k
Docker Introduction
ubermuda
5
510
Symfony 2, un framework robuste et moderne
ubermuda
5
200
Migration d'une base de code subversion vers git
ubermuda
0
120
Other Decks in Technology
See All in Technology
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
190
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
530
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.7k
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.3k
Tebiki Engineering Team Deck
tebiki
0
24k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
180
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
220
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
160
Context Engineeringの取り組み
nutslove
0
340
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
A better future with KSS
kneath
240
18k
How STYLIGHT went responsive
nonsquared
100
6k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
49k
Why Our Code Smells
bkeepers
PRO
340
58k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
120
Rails Girls Zürich Keynote
gr2m
96
14k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
310
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
430
Transcript
Comment Docker révolutionne le web Geoffrey Bachelet – @ubermuda
Qu'est-ce que Docker À quoi ça sert Comment ça marche
Pourquoi on l'aime Limitations Cas d'utilisation
Docker is an open platform for developers and sysadmins to
build, ship, and run distributed applications. ” https://www.docker.com/whatisdocker/
http://www.slideshare.net/dotCloud
http://www.slideshare.net/dotCloud
http://www.slideshare.net/dotCloud
http://www.slideshare.net/dotCloud
http://www.slideshare.net/dotCloud
Un système de container pour livrer n'importe quel code, n'importe
où*. * Pour certaines definitions de n'importe où.
None
Machine Virtuelle https://www.docker.com/whatisdocker/
Container https://www.docker.com/whatisdocker/
Plus rapide Moins de mémoire Moins d'espace disque
Comme* des VM super légères. * Pour certaines definitions de
comme.
LXC is a userspace interface for the Linux kernel containment
features. ” https://linuxcontainers.org/
None
https://blog.docker.com/2014/06/keynote-videos-from-dockercon14/
libcontainer Remplacement de LXC Implémentation en Go Pas de dépendances
externes
libswarm Composition de services
None
$ docker Usage: docker [OPTIONS] COMMAND [arg...] -‐H=[unix:///var/run/docker.sock]:
tcp:// host:port to bind/connect to or unix://path/to/ socket to use A self-‐sufficient runtime for linux containers. Commands: ...
$ docker run busybox ls bin dev
etc home lib lib64 linuxrc ...
docker run busybox ls
docker run busybox ls
docker run busybox ls
docker run busybox ls
docker run busybox ls
Images ? Container ?
Image https://docs.docker.com/terms/image/
Container https://docs.docker.com/terms/image/
https://docs.docker.com/terms/image/
$ docker run -‐it debian:wheezy /bin/bash Unable to find
image 'debian:wheezy' locally Pulling repository debian 61f7f4f722fb: Download complete 511136ea3c5a: Download complete 638fd9704285: Download complete root@6c0009adf3c0:/#
$ docker run -‐it debian:wheezy /bin/bash Unable to find
image 'debian:wheezy' locally Pulling repository debian 61f7f4f722fb: Download complete 511136ea3c5a: Download complete 638fd9704285: Download complete root@6c0009adf3c0:/#
$ docker run -‐it debian:wheezy /bin/bash Unable to find
image 'debian:wheezy' locally Pulling repository debian 61f7f4f722fb: Download complete 511136ea3c5a: Download complete 638fd9704285: Download complete root@6c0009adf3c0:/#
$ docker run -‐it debian:wheezy /bin/bash Unable to find
image 'debian:wheezy' locally Pulling repository debian 61f7f4f722fb: Download complete 511136ea3c5a: Download complete 638fd9704285: Download complete root@6c0009adf3c0:/#
$ docker run -‐it debian:wheezy /bin/bash Unable to find
image 'debian:wheezy' locally Pulling repository debian 61f7f4f722fb: Download complete 511136ea3c5a: Download complete 638fd9704285: Download complete root@6c0009adf3c0:/#
Docker Hub
$ docker run -‐it debian:wheezy /bin/bash ... root@6c0009adf3c0:/#
apt-‐get install -‐y nginx root@6c0009adf3c0:/# exit $ docker commit 6c0009adf3c0 nginx $ docker run -‐it nginx /bin/bash
$ docker run -‐it debian:wheezy /bin/bash ... root@6c0009adf3c0:/#
apt-‐get install -‐y nginx root@6c0009adf3c0:/# exit $ docker commit 6c0009adf3c0 nginx $ docker run -‐it nginx /bin/bash
$ docker run -‐it debian:wheezy /bin/bash ... root@6c0009adf3c0:/#
apt-‐get install -‐y nginx root@6c0009adf3c0:/# exit $ docker commit 6c0009adf3c0 nginx $ docker run -‐it nginx /bin/bash
$ docker run -‐it debian:wheezy /bin/bash ... root@6c0009adf3c0:/#
apt-‐get install -‐y nginx root@6c0009adf3c0:/# exit $ docker commit 6c0009adf3c0 nginx $ docker run -‐it nginx /bin/bash
$ docker run -‐it debian:wheezy /bin/bash ... root@6c0009adf3c0:/#
apt-‐get install -‐y nginx root@6c0009adf3c0:/# exit $ docker commit 6c0009adf3c0 nginx $ docker run -‐it nginx /bin/bash
Dockerfile
FROM debian:wheezy ENV DEBIAN_FRONTEND noninteractive RUN apt-‐get update
-‐y RUN apt-‐get install -‐y nginx CMD ["/usr/bin/nginx", "-‐g", "'daemon off;'"]
Public Registry Private Registry Dockerfile Networking Volumes Remote API Docker
CLI FIG Ambassador boot2docker
None
Déployer n'importe quoi
Déployer n'importe où* * Pour certaines definitions de n'importe où.
Déployer facilement
Déployer de manière sûre
C'est pas fini !
Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador Reconfiguration automatique
App Ambassador Ambassador Facebook Twitter Health check, Cache, etc.
Scale up. And Down.
Reverse Proxy App App Ambassador MySQL
Reverse Proxy App App App Ambassador MySQL
Fault tolerance.
Reverse Proxy App App App Ambassador MySQL
Reverse Proxy App App App Ambassador MySQL
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
App Ambassador MySQL Redis MySQL Ambassador Ambassador Ambassador
ChaosMonkey https://github.com/Netflix/SimianArmy/wiki/Chaos-Monkey
12factor.net
Damien Mathieu @dmathieu 12 factor app, bonnes pratiques pour développer
des applications puissantes et scalables Demain, 10h30 http://www.blendwebmix.com/schedule/12-factor-app-bonnes-pratiques-pour-developper-des-applications-puissantes-et-scalables/
Moi-même @ubermuda Vers des applications twelve-factor https://speakerdeck.com/ubermuda/vers-des-applications-twelve-factor
Dev/prod parity.
Continuous integration.
...
None
Certaines définitions de n'importe où.
Pas natif en dehors de Linux. Boot2docker
Linux 3.8+ (ou moins)
Noyau partagé. Sécurité.
Outillage peu matûre. Orchestration, monitoring, ...
Projet interne à dotCloud mars 2013 libcontainer DockerCon + 1.0
Docker 1.3 OpenSource 13 mars 2013 9-10 juin 16 octobre
16105 stars 649 contributeurs +
RedHat 10 juin Rachat de Orchard 40M$ Series C Microsoft
Google 23 juillet 16 septembre 15 octobre 19 sept. 2013
Continuous Integration Platform as a Service Distributed Applications Composition Continuous
Integration Platform as a Service Easy Application Deployment
Merci ! speackerdeck.com/ubermuda/comment-docker-revolutionne-le-web geoffrey.io / @ubermuda geoffrey.io/books/discovering-docker.html