continuous delivery of docker imagesblog.coralic.nl/assets/files/armincdofdockerimages.pdf · 2017....
TRANSCRIPT
![Page 1: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/1.jpg)
CONTINUOUS DELIVERY OF DOCKER IMAGESA Customer case: ZorgDomein
powered by Xebia
Armin Čoralić [email protected]
![Page 2: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/2.jpg)
DELIVER SOFTWARE WITH THE SPEED OF THOUGHT
![Page 3: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/3.jpg)
WE AS
![Page 4: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/4.jpg)
DOCKER + CONTINUOUS DELIVERY
+
![Page 5: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/5.jpg)
CONTINUOUS DELIVERY OF DOCKER IMAGES
![Page 6: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/6.jpg)
CONTINUOUS DELIVERY OF DOCKER IMAGES
Platform to deploy your docker images to
Security
Set up the logging, monitoring and alerting
Application versioning
Zero downtime deployment
![Page 7: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/7.jpg)
HIGH AVAILABLE PLATFORM
![Page 8: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/8.jpg)
HIGH AVAILABLE PLATFORM
![Page 9: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/9.jpg)
LOADBALANCERfrontend main bind *:80 mode http maxconn 1000 default_backend appbackend app mode http balance roundrobin option httpchk /health server intapp01 intapp01.zorgdomein.local:80 check port 8080 server intapp02 intapp02.zorgdomein.local:80 check port 8080 server intapp03 intapp03.zorgdomein.local:80 check port 8080
![Page 10: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/10.jpg)
LOADBALANCER
frontend main_ssl bind *:443 ssl crt /etc/pki/tls/private/dockerintegration.pem no-sslv3 mode http maxconn 1000 default_backend app
![Page 11: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/11.jpg)
DOCKERHOST
UbuntuUbuntu
OLD
VS
NEW
SSH
Other services
Application
Syslog
SSH
Syslog
Application
Other services
![Page 12: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/12.jpg)
DATABASE AS SERVICE
+ ○#
![Page 13: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/13.jpg)
LOGGING, MONITORING AND ALERTING
![Page 14: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/14.jpg)
LOGGING, MONITORING AND ALERTING
StatsD
#
![Page 15: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/15.jpg)
LOGGING
Dockerhost
Syslog
Application
![Page 16: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/16.jpg)
MONITORING
Dockerhost
Syslog
StatsDApplication
![Page 17: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/17.jpg)
ALERTING
Dockerhost
Syslog
StatsD
Events
Application
![Page 18: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/18.jpg)
APPLICATION VERSIONING
![Page 19: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/19.jpg)
APPLICATION VERSIONING
commit
push
commit
push
OLD
NEW
![Page 20: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/20.jpg)
IMAGE VERSIONING
zorgdomein/syslog:8.9-2
zorgdomein/ta:20150520_1830
zorgdomein/te:20150520_1736
![Page 21: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/21.jpg)
APPLICATION VERSIONING
ZorgDomein Application C_20150520_1830
zorgdomein/syslog:8.9-2
zorgdomein/ta:20150520_1830
zorgdomein/te:20150520_1736
![Page 22: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/22.jpg)
ENVIRONMENT VERSIONING
ZorgDomein Application C_20150520_1830
zorgdomein/syslog:8.9-2
zorgdomein/ta:20150520_1830
zorgdomein/te:20150520_1736config.yml
librato_flush_interval: 60 librato_token: "3847hwd" librato_user: “…” tc_db_user: “…” tc_db_host: “…zorgdomein.nl”
![Page 23: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/23.jpg)
ZERO DOWNTIME DEPLOYMENT
![Page 24: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/24.jpg)
ZERO DOWNTIME DEPLOYMENT
![Page 25: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/25.jpg)
ZERO DOWNTIME DEPLOYMENT WITH ANSIBLE
---- include: util/docker_update.yml vars: name: 'docker-stats' image: 'zorgdomein/docker-stats' image_version: "{{ version }}" container_state: "{{ state | default('present') }}" args: -v /var/run/docker.sock:/var/run/docker.sock -e 'STATSD_HOST={{ statsd_hostname }}' -e 'INTERVAL={{ stats_interval }}'
![Page 26: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/26.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-2
health:4
syslog:8.9-2
health:4
syslog:8.9-2
health:4
![Page 27: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/27.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-2
health:4
syslog:8.9-2
health:4
syslog:8.9-2
health:4
![Page 28: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/28.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-2
health:4
syslog:8.9-2
health:4
syslog:8.9-2
health:4
![Page 29: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/29.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-3
health:4
syslog:8.9-2
health:4
syslog:8.9-2
health:4
![Page 30: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/30.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-3
health:4
syslog:8.9-2
health:4
syslog:8.9-2
health:4
![Page 31: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/31.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-3
health:4
syslog:8.9-3
health:4
syslog:8.9-3
health:4
![Page 32: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/32.jpg)
ZERO DOWNTIME DEPLOYMENT
syslog:8.9-3
health:4
syslog:8.9-3
health:4
syslog:8.9-3
health:4
![Page 33: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/33.jpg)
SECURITY
![Page 34: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/34.jpg)
SECURITY
%
![Page 35: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/35.jpg)
DOCKER API
Allow run stop stats
events
Filter inspect
&
![Page 36: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/36.jpg)
DOCKER API - FILTER EXAMPLE
"Config": { "Cmd": [ "./run_te.sh" ], "Env": [ ….., "ZDDB_USERNAME=dbintuser", “ZDDB_PASSWORD=*********”
![Page 37: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/37.jpg)
DOCKER IMAGE MANAGEMENT
Image Size MB
Debian + Java
450
BusyBox + Java
300
Go 6
![Page 38: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/38.jpg)
DOCKER + CONTINUOUS DELIVERY
+
![Page 39: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/39.jpg)
CONTINUOUS DELIVERY OF DOCKER IMAGES
![Page 40: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/40.jpg)
CONTINUOUS DELIVERY OF DOCKER IMAGES
Platform to deploy your docker images to
Security
Set up the logging, monitoring and alerting
Application versioning
Zero downtime deployment
![Page 41: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/41.jpg)
THE DATA CENTER AUTOMATION EXPERTS
![Page 42: CONTINUOUS DELIVERY OF DOCKER IMAGESblog.coralic.nl/assets/files/ArminCDofDockerImages.pdf · 2017. 5. 28. · CONTINUOUS DELIVERY OF DOCKER IMAGES Platform to deploy your docker](https://reader036.vdocuments.mx/reader036/viewer/2022062800/5fc012571e235f04e565d4d3/html5/thumbnails/42.jpg)
WHAT WE DO
Automate, automate, automate!
Code the infrastructure!
Containerize all the things!