CSL605 Cloud Computing Lab Sem VI
Name : Amisha Verma
Roll No : 66
EXPERIMENT 10
Title To study and Implement Containerization using Docker
Pre requisite Virtualization concept
Mapping with CO CSL605.6
Objective To differentiate between virtualization and containerization with the help of
docker installation and configuration.
Outcome To install and configure docker in Linux machine for hosting a python web
app.
Instructions 1. Differences between Virtual Machine and Container should be
written in tabular format
2. Clear screenshots should be used and every screenshot should be
numbered and labelled.
Deliverables 1. Write the differences between Virtual Machine and Container
Feature Virtual Machine (VM) Container
Emulates a full physical Lightweight, isolated process
Definition
computer with its own OS. sharing the host OS kernel.
Runs a full guest OS (can Shares the host OS kernel
OS
be different from host). (must be same OS family).
Perfor- Higher overhead due to Near-native performance
mance full OS emulation. (lightweight).
Startup Fast (starts in seconds or milli-
Slow (boots entire OS).
Time seconds).
Heavy (requires CPU,
Resource Light (shares host resources
RAM, and disk for each
Usage efficiently).
VM).
Strong (full hardware-level Process-level isolation (less se-
Isolation
isolation). cure than VM).
Running different OSes Running multiple apps on the
Use Case
(Windows on Linux, etc.). same OS (microservices).
VMware, VirtualBox, Hy-
Examples Docker, Kubernetes, LXC.
per-V.
Large (GBs, includes full Small (MBs, only app + de-
Image Size
OS). pendencies).
Less portable (OS-de- Highly portable (runs any-
Portability
pendent). where with the same kernel).
More secure (strong isola- Less secure (shared kernel vul-
Security
tion). nerabilities).
2. Screenshots in step-wise fashion for following:
2.1 Installing Docker in Linux machine
2.2 Editing Docker file as per the python web app to be hosted
Running python app inside the container
Conclusion Containerization using Docker enhances application deployment by providing
a lightweight, portable, and scalable environment. It simplifies development,
ensures consistency across platforms, and improves resource efficiency.
References https://docs.docker.com/get-started/docker-
overview/#:~:text=The%20Docker%20platform,simultaneously%20on%20a%
20given%20host.
https://www.geeksforgeeks.org/docker-tutorial/
https://en.wikipedia.org/wiki/Docker_(software)