25
Messaging with Brought to you by Henryk Konsek

Messaging with the Docker

Embed Size (px)

DESCRIPTION

Messaging with the Docker.

Citation preview

Page 1: Messaging with the Docker

Messaging with

Brought to you by Henryk Konsek

Page 2: Messaging with the Docker

What is...

Engine for running and managing Linux containers.

Page 3: Messaging with the Docker

What are Linux containers?

Para-virtualized Linux instances.

Page 4: Messaging with the Docker

Docker == LXC ?

● Docker used to be based on LXC (LinuX Containers)

● but not anymore● now Docker provides custom API over

cgroups and stuff

Page 5: Messaging with the Docker

Why not regular virtualization?

● slooooooow● gigantic images● aggresive resource allocation● bad API

Page 6: Messaging with the Docker

Key concepts

● image (immutable, no state)● container (has state)● parent images (layers)

Page 7: Messaging with the Docker

Docker awesomeness #1

Commands.

Page 8: Messaging with the Docker

Docker awesomeness #2

Layers.

+WAR

+Tomcat

+JRE

Ubuntu base

Page 9: Messaging with the Docker

Docker awesomeness #3

Repositories.

Page 10: Messaging with the Docker

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

Page 11: Messaging with the Docker

Create new image in local repo

$ docker build -t app/app-1.0

$ docker run app/app-1.0

Page 12: Messaging with the Docker

Docker == deployment 2.0

● create single image ● move it between environments (dev, QA,

production)

Page 13: Messaging with the Docker

Deployment 2.0

Page 14: Messaging with the Docker

Dockerize everything

Page 15: Messaging with the Docker

Single box problem

You can’t deploy everything to the single box.

Page 16: Messaging with the Docker

Single box problem solution

We need kinda proxy aggregating many Docker servers.

Page 17: Messaging with the Docker

Docker aggregators

● libswarm● flocker

Page 18: Messaging with the Docker

Messaging and Docker

Page 19: Messaging with the Docker

Docker routers

● the same role as OSGi bundles● no VM transports● communication usually via REST or JMS

Page 20: Messaging with the Docker

“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

Page 21: Messaging with the Docker

Docker future at Fabric8

Docker will become the recommended target container.

Page 22: Messaging with the Docker

Docker future at Red Hat

Docker images will be a standard way to distribute middleware products.

Page 23: Messaging with the Docker

Docker ecosystem future #1

(Red Hat’s) Project Atomic.

Page 24: Messaging with the Docker

Docker ecosystem future #2

(Red Hat’s) Geard.

Page 25: Messaging with the Docker

Thank you!