Messaging with the Docker
-
Upload
henryk-konsek -
Category
Technology
-
view
1.015 -
download
1
description
Transcript of Messaging with the Docker
Messaging with
Brought to you by Henryk Konsek
What is...
Engine for running and managing Linux containers.
What are Linux containers?
Para-virtualized Linux instances.
Docker == LXC ?
● Docker used to be based on LXC (LinuX Containers)
● but not anymore● now Docker provides custom API over
cgroups and stuff
Why not regular virtualization?
● slooooooow● gigantic images● aggresive resource allocation● bad API
Key concepts
● image (immutable, no state)● container (has state)● parent images (layers)
Docker awesomeness #1
Commands.
Docker awesomeness #2
Layers.
+WAR
+Tomcat
+JRE
Ubuntu base
Docker awesomeness #3
Repositories.
Dockerfiles
“Recipes” for the new images.
FROM ubuntu
EXPOSE 8080
RUN sudo apt-get install java
RUN wget http://maven.app.com/app.jar
ENTRYPOINT java -jar app.jar
Create new image in local repo
$ docker build -t app/app-1.0
$ docker run app/app-1.0
Docker == deployment 2.0
● create single image ● move it between environments (dev, QA,
production)
Deployment 2.0
Dockerize everything
Single box problem
You can’t deploy everything to the single box.
Single box problem solution
We need kinda proxy aggregating many Docker servers.
Docker aggregators
● libswarm● flocker
Messaging and Docker
Docker routers
● the same role as OSGi bundles● no VM transports● communication usually via REST or JMS
“Bootified” & “Dockered” Camel routers● You need a bootstrap logic● Spring Boot can scan classpath to find new
routes● Fuse 6.2 Fabric8 comes with Spring Boot
Camel support
Docker future at Fabric8
Docker will become the recommended target container.
Docker future at Red Hat
Docker images will be a standard way to distribute middleware products.
Docker ecosystem future #1
(Red Hat’s) Project Atomic.
Docker ecosystem future #2
(Red Hat’s) Geard.
Thank you!