The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
Docker and containerization
1.
2. Group 13
Amulya Saxena (5945)
Chintan Jadhav (5918)
Omkar Zade (5956)
Saish Mandavkar (5924)
FY B Sc Computer Science, Ruia College 2017’
3. DOCKER
Docker is an open-source project that automates the
deployment of applications inside software containers.
It is promoted by the company Docker, Inc.
Docker provides an additional layer of abstraction and
automation of operating-system-level virtualization on
Windows and Linux.
4. Origins of Docker Project
dotCloud was operating a PaaS, using a custom
container engine.
This engine was based on OpenVZ (and later, LXC)
and AUFS.
It started (circa 2008) as a single Python script.
By 2012, the engine had multiple Python components.
(and ~100 other micro-services!)
End of 2012, dotCloud refactors this container
engine.
The codename for this project is "Docker."
5. First public release
March 2013, PyCon, Santa Clara: "Docker" is shown to a
public audience for the first time.
It is released with an open source license.
Very positive reactions and feedback!
The dotCloud team progressively shifts to Docker
development.
The same year, dotCloud changes name to Docker.
In 2014, the PaaS activity is sold.
6. The Docker Project
What is Docker technology?
Developers can use Docker to pack, ship, and run
any application as a lightweight, portable, self-
sufficient LXC container that can run virtually
anywhere. Therefore, "Containers gives you
instant application portability."
7. How does Docker Inc. make
money?
Docker Hub has free and paid services.
DTR (Docker Trusted Registry).
Enterprise support for Engine and other products.
Training and professional services
8. Docker; statistics & facts
2/3 of Companies that try using docker, adopt it.
Most companies who will adopt have already done
so within 30 days of initial production usage, and
almost all the remaining adopters convert within
60 days.
Real docker adoption is up 30% in one year
9. AS YOU CAN SEE THAT THE ADOPTION RATE IS
SKYROCKETING
12. Why would you use Docker?
Docker provides this same capability without the
overhead of a virtual machine. It lets you put your
environment and configuration into code and
deploy it. The same Docker configuration can also
be used in a variety of environments. This
decouples infrastructure requirements from the
application environment.
13. Conclusion - docker
Docker containers share their operating system
so they run as isolated processes regardless of
the host operating system. As Docker proudly
admits, this means that its containers can “run on
any computer, on any infrastructure and in any
cloud”. The portability, flexibility and simplicity
that this enables, is a key reason why Docker has
been able to generate such strong momentum.
14. CONTAINERIZATION
Containerization
- also called container based virtualization &
application containerization
-- is an OS-level virtualization method for
deploying and running distributed applications
without launching an entire vm for each
application.
Instead, multiple isolated systems, called
containers, are run on a single control host and
access a single kernel.
15. What is Docker Container
used for?
Docker is a tool designed to make it easier to
create, deploy, and run applications by using
containers. Containers allow a developer to
package up an application with all of the parts it
needs, such as libraries and other dependencies,
and ship it all out as one package.
16. Advantages of using containers
Ease of Deployment and Configuration
The most important benefit of containers is simplifying and
speeding up the process of deployment and configuration.
When you deploy a container, it is very easy to roll it out
behind a firewall or cloud environments or you can either
build it on a laptop or launch it in a massive web farm-in
seconds.
High Scalability
Containerization allow you to scale only the desired
functions without impacting on the entire application. For
example in a web application case, containers enable
companies to scale their database component without
having to scale the web server or message queue.
17. Increased Overall Productivity
Containers allow developers to achieve next-generation
efficiency in software delivery or allow product managers
to save time and resources by settling many of the
challenges that they face with traditional virtualization.
Process Isolation
Application isolation provides developers with exactly what
they need to deploy, in addition to avoiding dependencies.
There are many benefits when you run multiple applications
on the same machine such as increasing
productivity and multiple server consolidation for reducing
costs.
18. Pipeline Management
Containers ease the process from development
through production by providing a consistent test
environment, and allowing developers to place their
app inside a container, which is easily portable.
19. Conclusion - containerization
Containerization services like Docker, coupled with
orchestration services, can greatly simplify testing
and deployment of code. They’re not only fast but
portable and easy-to-use.