Journey of Docker
- A startup based of sanfransisco called dot cloud was working on PAAS products on cloud. For their internal activities they needed to create lxc (linux containers), so they developed a product called as Docker and made it opensource.
- Later on dotCloud became Docker Inc as Docker was a huge success.
- Docker has democratised containers.
-
Architecture
- Generation I:

- Generation II:

- Generation I:
-
Standards:
- OCI (Open Container Initiative) Refer Here
- containerd Refer Here
Docker Archiecture
- Docker client is a simple command line tool
- client will speak with docker daemon which has api’s to connect
- docker daemon forwards the request to containerd which knows how to pull images, maintain network etc… (high level runtime)
- to create container containerd calls docker low level runtime (libcontainer)
Install Docker on a Linux Machine
- I have create an ubuntu based linux vm
- Installing docker Refer Here
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg -y
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
- Add your current user to docker group so that docker client can access docker daemon without sudo permissions
sudo usermod -aG docker Dell
#exit and relogin
docker version

* Try installing docker on Redhat 8 or Redhat 9
