How to Install Docker On Debian 12

What is docker?

Docker is basically a container engine that uses the Linux Kernel in order to create containers on top of an operating system. Which is used to create, deploy and run the applications.

Install Docker

Install the docker using the apt package manager.

apt install docker.io docker-compose

Start and enable the docker

systemctl enable --now docker

Check Docker service

systemctl status docker

Output:

root@vps:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; preset: enabl>
     Active: active (running) since Tue 2023-06-13 16:20:51 UTC; 20s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 5345 (dockerd)
      Tasks: 8
     Memory: 28.0M
        CPU: 930ms
     CGroup: /system.slice/docker.service
             └─5345 /usr/sbin/dockerd -H fd:// --containerd=/run/containerd/con>

Create a group called docker,

groupadd docker

To add a user to the docker user group

usermod -aG docker $USER

If you want to add a different user, replace $USER with an existing username.

Check the docker version,

docker --version

Output:

root@vps:~# docker --version
Docker version 20.10.24+dfsg1, build 297e128

Test docker using the hello-world container.

docker run hello-world

Output:

root@vps:~# docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/