0% found this document useful (0 votes)
16 views

Dockers

learn about Dockers containers

Uploaded by

haider rizvi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

Dockers

learn about Dockers containers

Uploaded by

haider rizvi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 18

Welcome to Cloud

Native Computing
BootCamp
In the Collaboration with MOIT&T Pakistan.
DOCKER
Table Of Contents

 Introduction To Dockers
 Dockers Architecture
 Dockers Components
 Docker Objects
 Docker Deployment and Orchestration
 Dockers Advantages
 Dockers Disadvantages
 Conclusion
Introduction To Dockers
Docker in cloud computing is a tool that is used to automate
the deployment of applications in an environment designed to
manage containers. It is a container management service.
These containers help applications to work while they are being
shifted from one platform to another. Docker’s technology is
distinctive because it focuses on the requirements of
developers and systems. This modern technology enables
enterprises to create and run any product from any geographic
location.
Dockers Architecture
Dockers Architecture

• Docker uses a client-server architecture. The Docker client


talks to the Docker daemon, which does the heavy lifting of
building, running, and distributing your Docker containers.
The Docker client and daemon can run on the same system,
or you can connect a Docker client to a remote Docker
daemon. The Docker client and daemon communicate using a
REST API, over UNIX sockets or a network interface. Another
Docker client is Docker Compose, which lets you work with
applications consisting of a set of containers.
Dockers Architecture
 Docker Engine:
It is the core part of the whole Docker system. Docker Engine is an application
that follows a client-server architecture. It is installed on the host machine. There are
three components in the Docker Engine:
 Server:
It is the docker daemon called dockerd. It can create and manage docker
images. Containers, networks, etc.
 Rest API:
It is used to instruct the docker daemon what to do.
 Command Line Interface (CLI):
It is a client which is used to enter docker commands.
Dockers Architecture

 Docker Client
Docker users can interact with Docker through a client. When any docker commands
run, the client sends them to the dockerd daemon, which carries them out. Docker API
is used by Docker commands. Docker clients can communicate with more than one
daemon.
 Docker Registries
It is the location where the Docker images are stored. It can be a public docker
registry or a private docker registry. Docker Hub is the default place of docker images,
its stores’ public registry. You can also create and run your own private registry.
Dockers Components
• DOCKER Client
• Docker Host
• Docker Daemon
• Docker Images
Docker Objects

Images
Docker images are read-only templates with instructions to create a docker container.
Docker image can be pulled from a Docker hub and used as it is, or you can add additional
instructions to the base image and create a new and modified docker image
Containers
After you run a docker image, it creates a docker container. All the applications and their
environment run inside this container. You can use Docker API or CLI to start, stop, or delete
a docker container.
Volumes
The persisting data generated by docker and used by Docker containers are stored in
Volumes. They are completely managed by docker through docker CLI or Docker API.
Volumes work on both Windows and Linux containers. Rather than persisting data in a
container’s writable layer, it is always a good option to use volumes for it.
Docker Objects
 Networks
Docker networking is a passage through which all the isolated containers communicate. There are
mainly five network drivers in docker:
 Bridge:
• It is the default network driver for a container. You use this network when your
application is running on standalone containers, i.e. multiple containers
communicating with the same docker host.
 Host:
• This driver removes the network isolation between docker containers and docker hosts.
It is used when you don’t need any network isolation between the host and container.
 Overlay:
• This network enables swarm services to communicate with each other. It is used when
the containers are running on different Docker hosts or when swarm services are
formed by multiple applications.
 None: This driver disables all the networking.
 macvlan: This driver assigns mac addresses to containers to make them look like physical
devices. The traffic is routed between containers through their mac addresses.
Docker Deployment And
Orchestration
• Docker plugins:
Docker plugins (link resides outside ibm.com) can be used to make Docker
even more functional. A number of Docker plugins are included in the Docker
Engine plugin system, and third-party plugins can be loaded as well.
• Docker Compose:
Developers can use Docker Compose to manage multi-container applications,
where all containers run on the same Docker host. Docker Compose creates a YAML
(.YML) file that specifies which services are included in the application and can
deploy and run containers with a single command. Because YAML syntax is
language-agnostic, YAML files can be used in programs written in Java, Python,
Ruby, and many others languages.
Dockers Advantages

 Docker produces an API for container management – Docker


produces an API for container management in an image format and a
chance to use a remote registry for sharing containers. This scheme
serves both developers and system administrators with advantages for
instance.
 Fast application deployment – containers carry the minimal runtime
requirements of the application, decreasing their size and enabling them
to be deployed instantly.
 Transferable across machines – an application and all its
dependencies can be grouped into a separate container that is
autonomous from the host version of the Linux kernel, platform
configuration, or deployment type. This container can be assigned to
another machine that runs Docker and performed there without
adaptability issues.
Dockers Advantages

Version control and component retain – you can pursue succeeding


versions of a container, inspect irregularities or go back to previous versions.
Containers reuse segments from the preceding layers, which makes them
remarkably light.
Sharing – you can use a distant repository to share your container with
others. Red Hat provides a registry for this purpose, and it is also desirable to
configure your own individual repository.
Light and minimal overhead – Docker images are typically very small, which
promotes rapid delivery and reduces the time to deploy new application
containers.
Docker's Disadvantages

• Containers don't run at bare-metal speeds:


Containers utilize resources more
efficiently than virtual machines. But containers are however directed to
performance overhead due to overlay networking, interfacing within
containers and the host system, and so on. If you want 100% bare-metal
performance, you want to apply bare metal, not containers.
• The container ecosystem is split:
But the core Docker
platform is open source, some container products don’t work with other
ones.
Docker's Disadvantages

• Graphical applications do not operate well:


Docker was created as a solution for deploying server applications that
don’t need a graphical interface. While there are some creative approaches that one
can practice to run a GUI app inside a container, these solutions are solid at best.
• Few applications do not benefit from Docker Containers:
Docker was created as a solution for deploying server applications that
don’t need a graphical interface. While there are some creative approaches that one
can practice to run a GUI app inside a container, these solutions are solid at best.
Conclusion

• Docker in cloud computing security has undoubtedly taken a


revolutionary step towards the management of deployment
platforms. A container is a lightweight virtual machine that provides
address space, network, and file isolation. Big corporations like AT&T,
Verizon, Visa, and MetLife, to name a few, are all using the services of
docker. This itself speaks for their acceptability. In this modern age,
time is of the essence, and docker, with its virtualization framework,
streamlines the workflow for organizations.
THANK YOU

You might also like