SlideShare a Scribd company logo
Intro to Docker
Aram Yegenian - Systems Admin
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
Why developers care?
● Build once... (finally) run anywhere (as long as it is a Linux stack)
● A clean, safe, hygienic, 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 worrying.
● Automate testing, integration, packaging...anything you can script.
● Reduce/eliminate concerns about compatibility on different platforms, either your own or your
customers.
● Cheap, zero-penalty containers to deploy services. A VM without the overhead of a VM. Instant
replay and reset of image snapshots.
Why Administrators Care
● Configure once... run anything
● Make 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.
CFO, CIO, CTO, ...
● Faster Software Development Lifecycle: Development/Testing/Production
● Less overhead
● More consolidation
● More agility
● Reduced cost
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
The Challenge
The Matrix From Hell
Solution: Intermodel Shipping Container
Docker is a shipping container for code
Docker Eliminates the Matrix from Hell
Why it works: Separation of concerns
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
Linux containers
Operating-system-level virtualization is a server-virtualization method where the
kernel of an operating system allows for multiple isolated user-space instances,
instead of just one.
On Unix-like operating systems, one can see this technology as an advanced
implementation of the standard chroot mechanism.
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
What is Docker?
Docker is an open-source project that automates the deployment of applications
inside software containers, by providing an additional layer of abstraction and
automation of operating-system-level virtualization on Linux.
Docker uses resource isolation features of the Linux kernel such as cgroups and
kernel namespaces to allow independent "containers" to run within a single Linux
instance, avoiding the overhead of starting and maintaining virtual machines.
More technical details
Why
● Run everywhere
● Regardless of kernel version
● Regardless of host distro
● Physical or virtual, cloud or not
● Container and host architecture must
match...
● Run anything
● If it can run on the host, it can run in the
container
● If it can run on a Linux kernel, it can run
What
● High level: a lightweight VM
● Own process space
● Own network interface
● Can run stuff as root
● Can have its own /sbin/init (different from
host)
● Low level: chroot on steroids
● Can also have its own /sbin/init
● Container = isolated processes
● Share kernel with host
VMs vs Conatiners
Why are Docker Containers Lightweight
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
Docker 101
● docker ps
● docker images
● docker images ubuntu
● docker run -it ubuntu /bin/bash
● docker run -it ubuntu echo “hello world”
● docker run -it -e FOO=bar ubuntu /bin/bash
● docker run --name ubuntu_test -it ubuntu /bin/bash
● docker start ubuntu_test
● docker exec -it test_ubuntu /bin/bash
● docker pull centos
● docker run -d php:5.6-apache
● docker run -v $PWD/www:/var/www/html -d -p 80 php:5.6-apache
● Who should care?
● What is the problem?
● What is a container?
● What is Docker
● Docker 101
● Docker demo
● Docker compose
● Docker compose demo
Outline
Docker compose
Compose is a tool for defining and running multi-container applications with
Docker. With Compose, you define a multi-container application in a single file,
then spin your application up in a single command which does everything that
needs to be done to get it running.
Docker compose (fig)
● docker-compose -f dev.yml up -d
Enterprise solutions & more
docker swarm
Google Kubernetes http://kubernetes.io/
DCHQ https://www.dchq.io
Tutum https://www.tutum.co/
Microsoft Azure - Docker
Amazon AWS
Q & AThank you

More Related Content

What's hot (20)

PDF
Introdution to Docker (theory and hands on) dbCafé - dbTrento
Cristian Consonni
 
PPTX
Docker
Mutlu Okuducu
 
PPT
Docker introduction
Phuc Nguyen
 
PPTX
Introduction To Docker
Dr. Syed Hassan Amin
 
PDF
Docker in real life
Nguyen Van Vuong
 
PPTX
Docker introduction for the beginners
Juneyoung Oh
 
PDF
Orchestrating Docker containers at scale
Maciej Lasyk
 
PDF
Docker introduction
Layne Peng
 
ODP
Ruby and Docker on Rails
Muriel Salvan
 
PDF
Introduction to Docker
Jian Wu
 
PDF
Learning Docker with Thomas
Thomas Tong, FRM, PMP
 
PDF
Docker - introduction
Michał Kurzeja
 
PDF
Docker Intro at the Google Developer Group and Google Cloud Platform Meet Up
Jérôme Petazzoni
 
PDF
Docker
Patrick Oberdorf
 
PDF
Intro To Docker
Jessica Lucci
 
PDF
Docker Introduction + what is new in 0.9
Jérôme Petazzoni
 
PPTX
Start your adventure with docker
Sagar Dash
 
PPTX
Docker Global Hack Day #3
Docker, Inc.
 
PDF
Docker
SangtongPeesing
 
PDF
Docker and the Linux Kernel
Docker, Inc.
 
Introdution to Docker (theory and hands on) dbCafé - dbTrento
Cristian Consonni
 
Docker introduction
Phuc Nguyen
 
Introduction To Docker
Dr. Syed Hassan Amin
 
Docker in real life
Nguyen Van Vuong
 
Docker introduction for the beginners
Juneyoung Oh
 
Orchestrating Docker containers at scale
Maciej Lasyk
 
Docker introduction
Layne Peng
 
Ruby and Docker on Rails
Muriel Salvan
 
Introduction to Docker
Jian Wu
 
Learning Docker with Thomas
Thomas Tong, FRM, PMP
 
Docker - introduction
Michał Kurzeja
 
Docker Intro at the Google Developer Group and Google Cloud Platform Meet Up
Jérôme Petazzoni
 
Intro To Docker
Jessica Lucci
 
Docker Introduction + what is new in 0.9
Jérôme Petazzoni
 
Start your adventure with docker
Sagar Dash
 
Docker Global Hack Day #3
Docker, Inc.
 
Docker and the Linux Kernel
Docker, Inc.
 

Similar to JOSA TechTalk: Introduction to docker (20)

PDF
Docker Up and Running for Web Developers
Amr Fawzy
 
PDF
Docker up and Running For Web Developers
BADR
 
PDF
A Gentle Introduction to Docker and Containers
Docker, Inc.
 
PDF
Docker for developers
sparkfabrik
 
PDF
Docker for developers
DrupalDay
 
PDF
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
TheFamily
 
PDF
Introduction to Docker, December 2014 "Tour de France" Edition
Jérôme Petazzoni
 
PDF
Introduction to docker and docker compose
Lalatendu Mohanty
 
PDF
Introduction to Docker and Containers
Docker, Inc.
 
PDF
LXC, Docker, and the future of software delivery | LinuxCon 2013
dotCloud
 
PDF
LXC Docker and the Future of Software Delivery
Docker, Inc.
 
PDF
Docker for developers
Anvay Patil
 
PDF
Introduction to Docker at Glidewell Laboratories in Orange County
Jérôme Petazzoni
 
PDF
Containers: from development to production at DevNation 2015
Jérôme Petazzoni
 
PDF
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
Jérôme Petazzoni
 
PDF
Docker Fundamentals
Anshul Patel
 
ODP
Docker on Power Systems
Cesar Maciel
 
PDF
Docker. General overview
Mirantis IT Russia
 
PPTX
Introduction to Docker
Pubudu Jayawardana
 
PDF
A Gentle Introduction To Docker And All Things Containers
Jérôme Petazzoni
 
Docker Up and Running for Web Developers
Amr Fawzy
 
Docker up and Running For Web Developers
BADR
 
A Gentle Introduction to Docker and Containers
Docker, Inc.
 
Docker for developers
sparkfabrik
 
Docker for developers
DrupalDay
 
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
TheFamily
 
Introduction to Docker, December 2014 "Tour de France" Edition
Jérôme Petazzoni
 
Introduction to docker and docker compose
Lalatendu Mohanty
 
Introduction to Docker and Containers
Docker, Inc.
 
LXC, Docker, and the future of software delivery | LinuxCon 2013
dotCloud
 
LXC Docker and the Future of Software Delivery
Docker, Inc.
 
Docker for developers
Anvay Patil
 
Introduction to Docker at Glidewell Laboratories in Orange County
Jérôme Petazzoni
 
Containers: from development to production at DevNation 2015
Jérôme Petazzoni
 
Introduction to Docker, December 2014 "Tour de France" Bordeaux Special Edition
Jérôme Petazzoni
 
Docker Fundamentals
Anshul Patel
 
Docker on Power Systems
Cesar Maciel
 
Docker. General overview
Mirantis IT Russia
 
Introduction to Docker
Pubudu Jayawardana
 
A Gentle Introduction To Docker And All Things Containers
Jérôme Petazzoni
 
Ad

More from Jordan Open Source Association (20)

PPTX
JOSA TechTalks - Data Oriented Architecture
Jordan Open Source Association
 
PPTX
JOSA TechTalks - Machine Learning on Graph-Structured Data
Jordan Open Source Association
 
PDF
OpenSooq Mobile Infrastructure @ Scale
Jordan Open Source Association
 
PDF
Data-Driven Digital Transformation
Jordan Open Source Association
 
PDF
Data Science in Action
Jordan Open Source Association
 
PDF
Processing Arabic Text
Jordan Open Source Association
 
PDF
JOSA TechTalks - Downgrade your Costs
Jordan Open Source Association
 
PDF
JOSA TechTalks - Docker in Production
Jordan Open Source Association
 
PPTX
JOSA TechTalks - Word Embedding and Word2Vec Explained
Jordan Open Source Association
 
PDF
JOSA TechTalks - Better Web Apps with React and Redux
Jordan Open Source Association
 
PDF
JOSA TechTalks - RESTful API Concepts and Best Practices
Jordan Open Source Association
 
PDF
Web app architecture
Jordan Open Source Association
 
PDF
Intro to the Principles of Graphic Design
Jordan Open Source Association
 
ODP
Intro to Graphic Design Elements
Jordan Open Source Association
 
PDF
JOSA TechTalk: Realtime monitoring and alerts
Jordan Open Source Association
 
PPTX
JOSA TechTalk: Metadata Management
in Big Data
Jordan Open Source Association
 
ODP
JOSA TechTalk: Introduction to Supervised Learning
Jordan Open Source Association
 
PDF
D programming language
Jordan Open Source Association
 
PDF
A taste of Functional Programming
Jordan Open Source Association
 
PDF
JOSA TechTalks - Machine Learning in Practice
Jordan Open Source Association
 
JOSA TechTalks - Data Oriented Architecture
Jordan Open Source Association
 
JOSA TechTalks - Machine Learning on Graph-Structured Data
Jordan Open Source Association
 
OpenSooq Mobile Infrastructure @ Scale
Jordan Open Source Association
 
Data-Driven Digital Transformation
Jordan Open Source Association
 
Data Science in Action
Jordan Open Source Association
 
Processing Arabic Text
Jordan Open Source Association
 
JOSA TechTalks - Downgrade your Costs
Jordan Open Source Association
 
JOSA TechTalks - Docker in Production
Jordan Open Source Association
 
JOSA TechTalks - Word Embedding and Word2Vec Explained
Jordan Open Source Association
 
JOSA TechTalks - Better Web Apps with React and Redux
Jordan Open Source Association
 
JOSA TechTalks - RESTful API Concepts and Best Practices
Jordan Open Source Association
 
Web app architecture
Jordan Open Source Association
 
Intro to the Principles of Graphic Design
Jordan Open Source Association
 
Intro to Graphic Design Elements
Jordan Open Source Association
 
JOSA TechTalk: Realtime monitoring and alerts
Jordan Open Source Association
 
JOSA TechTalk: Metadata Management
in Big Data
Jordan Open Source Association
 
JOSA TechTalk: Introduction to Supervised Learning
Jordan Open Source Association
 
D programming language
Jordan Open Source Association
 
A taste of Functional Programming
Jordan Open Source Association
 
JOSA TechTalks - Machine Learning in Practice
Jordan Open Source Association
 
Ad

Recently uploaded (20)

PDF
LLM Search Readiness Audit - Dentsu x SEO Square - June 2025.pdf
Nick Samuel
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PPTX
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
PPTX
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
PDF
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
 
PDF
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 
PDF
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
PDF
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
PDF
Open Source Milvus Vector Database v 2.6
Zilliz
 
PDF
Python Conference Singapore - 19 Jun 2025
ninefyi
 
PDF
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
PPTX
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
PDF
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
PPTX
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
PDF
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
PDF
Database Benchmarking for Performance Masterclass: Session 1 - Benchmarking F...
ScyllaDB
 
PDF
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
PPTX
𝙳𝚘𝚠𝚗𝚕𝚘𝚊𝚍—Wondershare Filmora Crack 14.0.7 + Key Download 2025
sebastian aliya
 
PDF
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
LLM Search Readiness Audit - Dentsu x SEO Square - June 2025.pdf
Nick Samuel
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
 
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
Open Source Milvus Vector Database v 2.6
Zilliz
 
Python Conference Singapore - 19 Jun 2025
ninefyi
 
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
Database Benchmarking for Performance Masterclass: Session 1 - Benchmarking F...
ScyllaDB
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
𝙳𝚘𝚠𝚗𝚕𝚘𝚊𝚍—Wondershare Filmora Crack 14.0.7 + Key Download 2025
sebastian aliya
 
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 

JOSA TechTalk: Introduction to docker

  • 1. Intro to Docker Aram Yegenian - Systems Admin
  • 2. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 3. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 4. Why developers care? ● Build once... (finally) run anywhere (as long as it is a Linux stack) ● A clean, safe, hygienic, 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 worrying. ● Automate testing, integration, packaging...anything you can script. ● Reduce/eliminate concerns about compatibility on different platforms, either your own or your customers. ● Cheap, zero-penalty containers to deploy services. A VM without the overhead of a VM. Instant replay and reset of image snapshots.
  • 5. Why Administrators Care ● Configure once... run anything ● Make 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.
  • 6. CFO, CIO, CTO, ... ● Faster Software Development Lifecycle: Development/Testing/Production ● Less overhead ● More consolidation ● More agility ● Reduced cost
  • 7. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 11. Docker is a shipping container for code
  • 12. Docker Eliminates the Matrix from Hell
  • 13. Why it works: Separation of concerns
  • 14. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 15. Linux containers Operating-system-level virtualization is a server-virtualization method where the kernel of an operating system allows for multiple isolated user-space instances, instead of just one. On Unix-like operating systems, one can see this technology as an advanced implementation of the standard chroot mechanism.
  • 16. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 17. What is Docker? Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux. Docker uses resource isolation features of the Linux kernel such as cgroups and kernel namespaces to allow independent "containers" to run within a single Linux instance, avoiding the overhead of starting and maintaining virtual machines.
  • 18. More technical details Why ● Run everywhere ● Regardless of kernel version ● Regardless of host distro ● Physical or virtual, cloud or not ● Container and host architecture must match... ● Run anything ● If it can run on the host, it can run in the container ● If it can run on a Linux kernel, it can run What ● High level: a lightweight VM ● Own process space ● Own network interface ● Can run stuff as root ● Can have its own /sbin/init (different from host) ● Low level: chroot on steroids ● Can also have its own /sbin/init ● Container = isolated processes ● Share kernel with host
  • 20. Why are Docker Containers Lightweight
  • 21. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 22. Docker 101 ● docker ps ● docker images ● docker images ubuntu ● docker run -it ubuntu /bin/bash ● docker run -it ubuntu echo “hello world” ● docker run -it -e FOO=bar ubuntu /bin/bash ● docker run --name ubuntu_test -it ubuntu /bin/bash ● docker start ubuntu_test ● docker exec -it test_ubuntu /bin/bash ● docker pull centos ● docker run -d php:5.6-apache ● docker run -v $PWD/www:/var/www/html -d -p 80 php:5.6-apache
  • 23. ● Who should care? ● What is the problem? ● What is a container? ● What is Docker ● Docker 101 ● Docker demo ● Docker compose ● Docker compose demo Outline
  • 24. Docker compose Compose is a tool for defining and running multi-container applications with Docker. With Compose, you define a multi-container application in a single file, then spin your application up in a single command which does everything that needs to be done to get it running.
  • 25. Docker compose (fig) ● docker-compose -f dev.yml up -d
  • 26. Enterprise solutions & more docker swarm Google Kubernetes http://kubernetes.io/ DCHQ https://www.dchq.io Tutum https://www.tutum.co/ Microsoft Azure - Docker Amazon AWS
  • 27. Q & AThank you