The document discusses containerization using Docker. It covers topics like containers vs virtual machines, Docker architecture and features, building Docker images, networking and linking containers, Docker Compose for multi-container apps, container security, and orchestration tools like Docker Swarm, Kubernetes, and Mesos/Marathon for running containers at scale. It provides examples of using Docker, Amazon ECS, Docker Swarm, and Mesos/Marathon.
7. Containers
โ Run in user space
โ Have an isolated user space
โ OS architecture is shared
โ Only parts created are bins/libs
โ Lightweight compared to VMโs
8. Docker
โ Open source project
โ Linux namespaces & control groups
โ Union File System
โ Lightweight and fast
โ Usability
โ Easy to Modularize apps
โ Easy to scale apps
โ Dockerhub as central repository
10. Why Micro Services
โ Service oriented architecture
โ Loosely coupled, Tightly aligned
โ High Developer productivity
โ Regressions easy to find, correct
โ Releases have zero overhead
โ Rapid iteration using real consumer metrics
โ Very less overhead in doing a new release
โ Continuous Delivery
12. Docker setup
โ Ubuntu
โ Installation using apt-get
โ 1.12 aws images on beta signup
โ Windows
โ Docker Toolbox
โ Docker 1.12
โ Mac
โ Docker Toolbox
โ Docker 1.12
13. Dockerhub
โ Dockerhub
โ Public repository
โ Private repository
โ Official images
โ User submitted images
โ Private docker infrastructure
14. Docker images
โ What is a docker image
โ Creating a container from an image
โ Listing images
โ Removing images
โ Removing images
โ Searching docker images
25. CI and deployment using Jenkins
โ Using Jenkins for CI
โ Docker plugins
โ ssh build and deployment
26. Securing Docker containers
โ VM vs Docker containers
โ Resource Isolation
โ Cgroups
โ Non root user
โ A trusted repository of software
โ Filesystems need to be read-only
โ Copy on write
โ Security-Enhanced Linux
27. Orchestration
โ Running containers on a cluster
โ High availability
โ Load balancing and Auto scaling
โ Mesos, Marathon (Apache project)
โ Docker Swarm (native Docker v 1.12 )
โ GCE Kubernetes PAAS (Google project)
โ AWS ECS PAAS
โ AWS containers on Beanstalk PAAS
37. Mesos, Marathon cluster Demo
โ Setup on a VM
โ Mesos Master dashboard
โ Marathon dashboard
โ Launching a hello world job
โ HA, Auto scaling