SlideShare a Scribd company logo
1 of 25
Download to read offline
Presentation By:
Mohammadreza Amini
Amir Arsalan
Autumn 2015
IRAN OpenStack Users Group
Docker Architecture
Version Modified
Agenda
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
●
Docker Concept
●
How Does Docker Work?
●
Should know about Docker
●
Docker vs VMs
●
Docker vs lxc
●
The underlying technology
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Docker Concept
Docker is composed of following four components
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
●
Docker Client and Daemon
●
Images
●
registries
●
Containers
Docker Client and Daemon
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Docker Daemon
the Docker daemon runs on a host machine. The user does not directly interact
with the daemon, but instead through the Docker client.
Docker Client
The Docker client, in the form of the docker binary, is the primary user interface to
Docker. It accepts commands from the user and communicates back and forth with
a Docker daemon.
Images
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
A Docker image is a read-only template.
Image type:
●
Images that exist on register (docker hub)
●
Images that can created with build
Registeries
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Docker registries hold images. These are public or private stores from which you upload or
download images. The public Docker registry is provided with the Docker Hub.
Containers
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Docker containers are similar to a directory. A Docker container holds everything that is
needed for an application to run. Each container is created from a Docker image.
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
How Does Docker Work?
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Reference: https://docs.docker.com/article-img/architecture.svg
What happens when you run a container?
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
●
Pulls the image
●
Creates a new container
●
Allocates a filesystem and mounts a read-write layer
●
Allocates a network / bridge interface
●
Sets up an IP address
●
Executes a process that you specify
●
Captures and provides application output
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Should know about Docker
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
●
Docker is not LXC
●
Docker is not a Virtual machine Solution.
●
Docker is not a configuration management system and is not a replacement for chef,
puppet, Ansible etc.
●
Docker is not a platform as a service technology.
Things you should know about Docker:
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Docker vs VMs
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Reference: https://risingstack-blog.s3-eu-west-1.amazonaws.com/2015/05/hypervisor-based-virtualization.jpg
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Reference: https://risingstack-blog.s3-eu-west-1.amazonaws.com/2015/05/os-virtualization.jpg
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Docker vs lxc
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Reference: https://www.flockport.com/lxc-vs-docker/
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
The underlying technology
Namespaces
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Namespaces provides a layer of isolation: each aspect of a container runs in its own
namespace and does not have access outside it.
More Details: http://www.toptal.com/linux/separation-anxiety-isolating-your-system-with-linux-namespaces
Control Groups
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Cgroups running applications in isolation is to have them only use the resources you want. This ensures
containers are good multi-tenant citizens on a host. Control groups allow Docker to share available
hardware resources to containers and, if required, set up limits and constraints. For example, limiting the
memory available to a specific container.
More Details: https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt
Union File System
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Union file systems, or UnionFS, are file systems that operate by creating layers, making them very
lightweight and fast. Docker uses union file systems to provide the building blocks for containers.
More Details: http://www.fsl.cs.sunysb.edu/docs/unionfs-tr/unionfs.pdf
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Any Question?
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Stay in Touch and Join Us:
● Home Page: OpenStack.ir
● Meetup age: Meetup.com/IranOpenStack
● Mailing List: OpenStackir@Lists.OpenStack.org
● Twitter: @OpenStackIR , #OpenStackIRAN
● IRC Channel on FreeNode: #OpenStack-ir
Docker Architecture
Version Modified
| Iran Community OpenStack.ir
Mohammadreza Amini
Linux Administrator
Mohammadreza@openstack.ir
Amir Arsalan
Python Developer
Arsalan@openstack.ir
Thank You

More Related Content

What's hot

What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
Simplilearn
 

What's hot (20)

Docker introduction for Carbon IT
Docker introduction for Carbon ITDocker introduction for Carbon IT
Docker introduction for Carbon IT
 
Introdution to Docker (theory and hands on) dbCafé - dbTrento
Introdution to Docker (theory and hands on) dbCafé - dbTrentoIntrodution to Docker (theory and hands on) dbCafé - dbTrento
Introdution to Docker (theory and hands on) dbCafé - dbTrento
 
Docker Global Hack Day #3
Docker Global Hack Day #3 Docker Global Hack Day #3
Docker Global Hack Day #3
 
Docker and the Linux Kernel
Docker and the Linux KernelDocker and the Linux Kernel
Docker and the Linux Kernel
 
Docker 101 for "The Core of Microservice Architecture"
Docker 101 for "The Core of Microservice Architecture"Docker 101 for "The Core of Microservice Architecture"
Docker 101 for "The Core of Microservice Architecture"
 
Docker basics
Docker basicsDocker basics
Docker basics
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Docker Fundamentals
Docker FundamentalsDocker Fundamentals
Docker Fundamentals
 
Leverage LXC/LXD with Kubernetes
Leverage LXC/LXD with KubernetesLeverage LXC/LXD with Kubernetes
Leverage LXC/LXD with Kubernetes
 
Docker introduction for the beginners
Docker introduction for the beginnersDocker introduction for the beginners
Docker introduction for the beginners
 
virtualization-vs-containerization-paas
virtualization-vs-containerization-paasvirtualization-vs-containerization-paas
virtualization-vs-containerization-paas
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Virtual Machines and Docker
Virtual Machines and DockerVirtual Machines and Docker
Virtual Machines and Docker
 
Understand how docker works
Understand how docker worksUnderstand how docker works
Understand how docker works
 
Networking Overview for Docker Platform
Networking Overview for Docker PlatformNetworking Overview for Docker Platform
Networking Overview for Docker Platform
 
Monitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & MicroservicesMonitoring Dell Infrastructure using Docker & Microservices
Monitoring Dell Infrastructure using Docker & Microservices
 
Docker Container Introduction
Docker Container IntroductionDocker Container Introduction
Docker Container Introduction
 
Docker
DockerDocker
Docker
 
Docker practical solutions
Docker practical solutionsDocker practical solutions
Docker practical solutions
 
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
 

Viewers also liked

Viewers also liked (9)

Devops
DevopsDevops
Devops
 
DevOps - Por onde começar
DevOps - Por onde começarDevOps - Por onde começar
DevOps - Por onde começar
 
Docker Swarm Cluster
Docker Swarm ClusterDocker Swarm Cluster
Docker Swarm Cluster
 
Docker swarm
Docker swarmDocker swarm
Docker swarm
 
Individual and team goals
Individual and team goalsIndividual and team goals
Individual and team goals
 
Docker Swarm Introduction
Docker Swarm IntroductionDocker Swarm Introduction
Docker Swarm Introduction
 
Introction to docker swarm
Introction to docker swarmIntroction to docker swarm
Introction to docker swarm
 
Docker Swarm: Docker Native Clustering
Docker Swarm: Docker Native ClusteringDocker Swarm: Docker Native Clustering
Docker Swarm: Docker Native Clustering
 
10 Lessons for New Managers
10 Lessons for New Managers10 Lessons for New Managers
10 Lessons for New Managers
 

Similar to Docker architecture (version modified)

Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...
Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...
Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...
Simplilearn
 

Similar to Docker architecture (version modified) (20)

Docker architecture-04-1
Docker architecture-04-1Docker architecture-04-1
Docker architecture-04-1
 
Reviwe(docker)
Reviwe(docker)Reviwe(docker)
Reviwe(docker)
 
containers and virtualization tools ( Docker )
containers and virtualization tools ( Docker )containers and virtualization tools ( Docker )
containers and virtualization tools ( Docker )
 
Docker
DockerDocker
Docker
 
Docker
DockerDocker
Docker
 
Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...
Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...
Docker Tutorial For Beginners | What Is Docker And How It Works? | Docker Tut...
 
Azure ai on premises with docker
Azure ai on premises with  dockerAzure ai on premises with  docker
Azure ai on premises with docker
 
Demystifying Docker101
Demystifying Docker101Demystifying Docker101
Demystifying Docker101
 
Demystifying Docker
Demystifying DockerDemystifying Docker
Demystifying Docker
 
Docker on Power Systems
Docker on Power SystemsDocker on Power Systems
Docker on Power Systems
 
Docker for .net developer
Docker for .net developerDocker for .net developer
Docker for .net developer
 
Docker for .NET Developers
Docker for .NET DevelopersDocker for .NET Developers
Docker for .NET Developers
 
Docker up and Running For Web Developers
Docker up and Running For Web DevelopersDocker up and Running For Web Developers
Docker up and Running For Web Developers
 
Docker Up and Running for Web Developers
Docker Up and Running for Web DevelopersDocker Up and Running for Web Developers
Docker Up and Running for Web Developers
 
Faster and Easier Software Development using Docker Platform
Faster and Easier Software Development using Docker PlatformFaster and Easier Software Development using Docker Platform
Faster and Easier Software Development using Docker Platform
 
Docker Overview - Rise of the Containers
Docker Overview - Rise of the ContainersDocker Overview - Rise of the Containers
Docker Overview - Rise of the Containers
 
Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
 
Container on azure
Container on azureContainer on azure
Container on azure
 
Docker_tech_guild ppt.ppt technical guild
Docker_tech_guild ppt.ppt technical guildDocker_tech_guild ppt.ppt technical guild
Docker_tech_guild ppt.ppt technical guild
 
Docker
DockerDocker
Docker
 

Recently uploaded

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

Docker architecture (version modified)

  • 1. Presentation By: Mohammadreza Amini Amir Arsalan Autumn 2015 IRAN OpenStack Users Group Docker Architecture Version Modified
  • 2. Agenda Docker Architecture Version Modified | Iran Community OpenStack.ir ● Docker Concept ● How Does Docker Work? ● Should know about Docker ● Docker vs VMs ● Docker vs lxc ● The underlying technology
  • 3. Docker Architecture Version Modified | Iran Community OpenStack.ir Docker Concept
  • 4. Docker is composed of following four components Docker Architecture Version Modified | Iran Community OpenStack.ir ● Docker Client and Daemon ● Images ● registries ● Containers
  • 5. Docker Client and Daemon Docker Architecture Version Modified | Iran Community OpenStack.ir Docker Daemon the Docker daemon runs on a host machine. The user does not directly interact with the daemon, but instead through the Docker client. Docker Client The Docker client, in the form of the docker binary, is the primary user interface to Docker. It accepts commands from the user and communicates back and forth with a Docker daemon.
  • 6. Images Docker Architecture Version Modified | Iran Community OpenStack.ir A Docker image is a read-only template. Image type: ● Images that exist on register (docker hub) ● Images that can created with build
  • 7. Registeries Docker Architecture Version Modified | Iran Community OpenStack.ir Docker registries hold images. These are public or private stores from which you upload or download images. The public Docker registry is provided with the Docker Hub.
  • 8. Containers Docker Architecture Version Modified | Iran Community OpenStack.ir Docker containers are similar to a directory. A Docker container holds everything that is needed for an application to run. Each container is created from a Docker image.
  • 9. Docker Architecture Version Modified | Iran Community OpenStack.ir How Does Docker Work?
  • 10. Docker Architecture Version Modified | Iran Community OpenStack.ir Reference: https://docs.docker.com/article-img/architecture.svg
  • 11. What happens when you run a container? Docker Architecture Version Modified | Iran Community OpenStack.ir ● Pulls the image ● Creates a new container ● Allocates a filesystem and mounts a read-write layer ● Allocates a network / bridge interface ● Sets up an IP address ● Executes a process that you specify ● Captures and provides application output
  • 12. Docker Architecture Version Modified | Iran Community OpenStack.ir Should know about Docker
  • 13. Docker Architecture Version Modified | Iran Community OpenStack.ir ● Docker is not LXC ● Docker is not a Virtual machine Solution. ● Docker is not a configuration management system and is not a replacement for chef, puppet, Ansible etc. ● Docker is not a platform as a service technology. Things you should know about Docker:
  • 14. Docker Architecture Version Modified | Iran Community OpenStack.ir Docker vs VMs
  • 15. Docker Architecture Version Modified | Iran Community OpenStack.ir Reference: https://risingstack-blog.s3-eu-west-1.amazonaws.com/2015/05/hypervisor-based-virtualization.jpg
  • 16. Docker Architecture Version Modified | Iran Community OpenStack.ir Reference: https://risingstack-blog.s3-eu-west-1.amazonaws.com/2015/05/os-virtualization.jpg
  • 17. Docker Architecture Version Modified | Iran Community OpenStack.ir Docker vs lxc
  • 18. Docker Architecture Version Modified | Iran Community OpenStack.ir Reference: https://www.flockport.com/lxc-vs-docker/
  • 19. Docker Architecture Version Modified | Iran Community OpenStack.ir The underlying technology
  • 20. Namespaces Docker Architecture Version Modified | Iran Community OpenStack.ir Namespaces provides a layer of isolation: each aspect of a container runs in its own namespace and does not have access outside it. More Details: http://www.toptal.com/linux/separation-anxiety-isolating-your-system-with-linux-namespaces
  • 21. Control Groups Docker Architecture Version Modified | Iran Community OpenStack.ir Cgroups running applications in isolation is to have them only use the resources you want. This ensures containers are good multi-tenant citizens on a host. Control groups allow Docker to share available hardware resources to containers and, if required, set up limits and constraints. For example, limiting the memory available to a specific container. More Details: https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt
  • 22. Union File System Docker Architecture Version Modified | Iran Community OpenStack.ir Union file systems, or UnionFS, are file systems that operate by creating layers, making them very lightweight and fast. Docker uses union file systems to provide the building blocks for containers. More Details: http://www.fsl.cs.sunysb.edu/docs/unionfs-tr/unionfs.pdf
  • 23. Docker Architecture Version Modified | Iran Community OpenStack.ir Any Question?
  • 24. Docker Architecture Version Modified | Iran Community OpenStack.ir Stay in Touch and Join Us: ● Home Page: OpenStack.ir ● Meetup age: Meetup.com/IranOpenStack ● Mailing List: OpenStackir@Lists.OpenStack.org ● Twitter: @OpenStackIR , #OpenStackIRAN ● IRC Channel on FreeNode: #OpenStack-ir
  • 25. Docker Architecture Version Modified | Iran Community OpenStack.ir Mohammadreza Amini Linux Administrator Mohammadreza@openstack.ir Amir Arsalan Python Developer Arsalan@openstack.ir Thank You