dockerizing mule esb

17
Build Ship Run

Upload: satheesh-valluru

Post on 07-Jan-2017

169 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Dockerizing Mule ESB

Build Ship Run

Page 2: Dockerizing Mule ESB

Challenge

Page 3: Dockerizing Mule ESB

When something goes wrong..

Page 4: Dockerizing Mule ESB

Cargo Transport 1960s

Page 5: Dockerizing Mule ESB

Solution: Intermodal Shipping Container

Page 6: Dockerizing Mule ESB

Docker is a Container System for Code

Page 7: Dockerizing Mule ESB

Ok so what does that give us?

Page 8: Dockerizing Mule ESB

Developer: Build Once, Run AnywhereA clean, safe, hygienic and portable runtime environment for your app.

No worries about missing dependencies, packages and other pain points during subsequent deployments.

Run each app in its own isolated container, so you can run various versions of libraries and other dependencies for each app without worryingAutomate testing, integration, packaging…anything you can script

Reduce/eliminate concerns about compatibility on different platforms, either your own or your customers.

Page 9: Dockerizing Mule ESB

Operator: Configure Once, Run AnythingMake the entire lifecycle more efficient, consistent, and repeatable

Increase the quality of code produced by developers.

Eliminate inconsistencies between development, test, production, and customer environments

Support segregation of duties

Significantly improves the speed and reliability of continuous deployment and continuous integration systems

Because the containers are so lightweight, address significant performance, costs, deployment, and portability issues normally associated with VMs

Page 10: Dockerizing Mule ESB

Why it works—separation of concerns• Dan the Developer

• Worries about what’s “inside” the container• His code• His Libraries• His Package Manager• His Apps• His Data

• All Linux servers look the same

• Oscar the Ops Guy• Worries about what’s

“outside” the container• Logging• Remote access• Monitoring• Network config

• All containers start, stop, copy, attach, migrate, etc. the same way

Page 11: Dockerizing Mule ESB

Containers vs. VMs

Page 12: Dockerizing Mule ESB

People were like….

Page 13: Dockerizing Mule ESB

Dockerfile for MMC ServerFROM image:version

COPY your_app_code

RUN your_cmds_before_app

EXPOSE port

CMD to_run_app

FROM codingtony/java MAINTAINER vallurusateesh2009(at)google(dot)com RUN wget https://repository.mulesoft.org/nexus/content/repositories/releases/org/mule/distributions/mule-standalone/3.5.0/mule-standalone-3.5.0.tar.gzRUN cd /opt && tar xvzf ~/mule-standalone-3.5.0.tar.gzRUN echo "4a94356f7401ac8be30a992a414ca9b9 /mule-standalone-3.5.0.tar.gz" | md5sum -cRUN rm ~/mule-standalone-3.5.0.tar.gzRUN ln -s /opt/mule-standalone-3.5.0 /opt/mule CMD [ "/opt/mule/bin/mule" ]

Page 14: Dockerizing Mule ESB

Bored.. Lets code

Page 15: Dockerizing Mule ESB

Partner Eco System

Page 16: Dockerizing Mule ESB

What is Docker

Docker is “an open source project to pack, ship and run any application as a lightweight container.”

The idea is to provide a comprehensive abstraction layer that allows developers to “containerize” or “package” any application and have it run on any infrastructure

Docker containers provide a standard, consistent way of packaging just about any application.

Page 17: Dockerizing Mule ESB

Since it started in March 2013...• >200,000 pulls• >7,500 github stars• >200 significant contributors• >200 projects built on top of docker• UIs, mini-PaaS, Remote Desktop...• 1000’s of Dockerized applications

Memcached, Redis, Node.js, Hadoop...• Integration in Jenkins, Travis, Chef, Puppet,

Vagrant and OpenStack• Meetups arranged around the world…

with organizations like Ebay, Cloudflare, Yandex, and Rackspace presenting on their use of Docker