rapid application development with docker

Post on 22-Jan-2018

1.284 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Niklas Heidloff, IBM Bluemix Developer Advocate @nheidloff heidloff.net

Rapid Application Development in the Cloud and On-Premises with Docker !

Example: Minecraft!

Example: Minecraft!

Example: Minecraft!

Example: Minecraft!

Example: Minecraft!

Example: Minecraft!

Example: Minecraft!

Rapid Application Development!§  Need for speed and need for simplicity

§  New methodologies and technologies make the core coding fast and simple

Rapid Deployment ?!§  Coding is often rapid, but deployment is (mostly) not§  Issue: Different target platforms with different configurations

§  Expanded role of developers: Not only responsible to write code but responsible for full life cycle up to the testing in production environments§  Old developer excuse “it works on my machine” doesn’t count any

longer

DevOps!§  DevOps supports developers to automate testing and

deployments through delivery pipelines

§  But deployments can still be challenging§  Different types of applications§  Different target environments�

§  Containers to the Rescue

Containers vs. VMs!§  Lighter weight than VMs (virtual machines)

Enter Docker!§  Standardizes the packaging of applications and container

runtimes§  Write once run everywhere

Sample Servlet!

Dockerfile!

Build Image!

Run Container!

Sample Application!

Registries to share Images!§  Docker Hub

§  Public§  Private�

§  Docker Trusted Registry

Docker on IBM Bluemix!§  Bluemix is IBM’s application platform in the cloud based on

Cloud Foundry§  IBM extends and connects Docker containers to

production-ready enterprise environments§  IBM hosted private registry§  Run containers in local datacenters or in the cloud§  External IP addresses§  Integrated monitoring and logging§  Security readiness guidance via Vulnerability Advisor

Tag Image!

Push Image!

Push Image (cont.)!

Image Registry!

Run Container!

Running Container – Overview !

Sample Application!

Running Container – Instances !

Running Container – Monitoring !

Running Container – Logs !

Running Container – Advanced Logs !

Vulnerability Advisor!

Vulnerability Advisor (cont.)!

Automation via Delivery Pipelines!§  To simplify the process to build images and run containers,

delivery pipelines can be used §  Different deployment strategies can be used to deploy to

different target environments without downtimes

Java Code Modification!

Push Change!

Automatic Maven Build!

Automatic Docker Build!

Automatic Container Creation!

Completed Deployment!

Changed Application!

ToDo Sample Application!

Spring Boot Application!

REST Controller!

Mongo Repository!

Dockerfile!

MongoDB URI!

Docker Compose!

Bind Bluemix Service!

Hybrid Sample Application!

UrbanCode Build and Deploy!

IBM UrbanCode Build and Deploy!

Take-Aways!§  Docker containers allow the standardized packaging of

applications and easy deployments to different environments

§  Docker is currently the de-facto container standard and is evolving into the Open Container Initiative

§  IBM added enterprise capabilities for Docker images and containers

§  Try Docker in the cloud via the 30 days trial of Bluemix

Thank you!

top related