Microservices, Container Docker and Kubernetes
Microservices, Container Docker and Kubernetes
Microservices Cons
• Microservices are more difficult
• People often fear complexity
Microservices and SOA
• Similarities
• Made of loosely coupled , reusable, independent components
• Main Difference is in scope: Microservices is for Application, not
Enterprise
Tools
• Docker —To package and deploy services
• Docker Compose —To test microservices application on the
development workstation
• Kubernetes —To host application in the cloud
• Terraform —To build cloud infrastructure, Kubernetes cluster, and
deploy application
First Iteration
What is Container
• Based on LXC
• In between chroot
and full fledged VM
• The goal of LXC is to
create an
environment as close
as possible to a
standard Linux
installation but
without the need for
a separate kernel.
• Lightweight OS
Sharing
• Comparison with VMs
Docker is a Container Orchestration
Technology
• Managing lifecycles
of containers
• Creation of images
• Creation of
containers from
images
• Packaging of images
• Lightweight
• Makes it easy to scale
Some sample commands
• Docker run hello-world
• Docker run = Docker create (image) [pull if necessary] + start
• Docker start = starting an image
• Docker exec = running program inside container
• Docker images = enlist all image in local system
• Docker pull = Pull image from hub
• Docker rmi = remove image
• Docker rm = remove container
① Sets the base image for our new
Dockerfile image. This allows us to produce new
images based on existing images.