• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer
WebSetNet

WebSetNet

Technology News

  • Technology News
    • Mobile
    • Games
  • Internet Marketing
  • System Admin
    • Windows 11
    • Linux
    • Mac & Apple
    • Website Scripts
      • Wordpress
You are here: Home / System Admin / Linux / How to Install Docker on Debian 10

How to Install Docker on Debian 10

August 5, 2020 by Martin6

 

In this tutorial, we will learn how to install and use Docker on a Debian 10 VPS.

Docker is a free and open-source tool that uses OS-level virtualization to deliver software in packages called containers. Docker is specially designed to make it easier to create, deploy and run applications by using containers. Docker containers are lightweight and very similar to Virtual Machine, using the host OS. Containers allow you to package up an application with all required libraries and other dependencies and ship it in one package.

Docker shares the same Linux kernel and other resources as the system that they’re running on, and only require the application along with its dependencies to be packaged. This will speed up your system performance and reduces the size of the application. Docker is free, so anyone can contribute to Docker and it being open-source allows anyone to extend it and meet their own needs. The main goal for the Docker is for developers to develop the applications easily, ship them into containers, and deploy it anywhere.

Table of Contents

Prerequisites:

  • A VPS running Debian 10. For the purposes of this tutorial, we will use our SSD 2 Debian 10 VPS.
  • Full SSH root access or a user with sudo privileges is also required.

Step 1: Log in via SSH and Update Packages

Log in to your Debian 10 VPS with SSH as the root user:

ssh [email protected]IP_Address -p Port_number

Replace “root” with a user that has sudo privileges if necessary. Additionally, replace “IP_Address” and “Port_Number” with your server’s respective IP address and SSH port number. Next, let’s make sure that we’re on Debian 10. You can do that like this:

# lsb_release -a

You should get this as the output:

Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster

Then, run the following command to make sure that all installed packages on the server are updated to their latest available versions:

# apt update && apt upgrade

Step 2: Install Docker

Before starting, you will need to install some dependencies to allow your system to access the Docker repositories over HTTPS. You can install all of them with the following command:

sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

Once all the required dependencies are installed, download and add the Docker’s GPG key with the following command:

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

Next, add the Docker repository with the following command:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

Finally, update the repository and install the latest version of Docker with the following command:

sudo apt-get update
sudo apt-get install docker-ce

Once the installation has been completed, check the status of Docker with the following command:

sudo systemctl status docker

● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2019-09-18 07:14:31 EDT; 5min ago
Docs: https://docs.docker.com
Main PID: 17988 (dockerd)
Tasks: 8
Memory: 91.0M
CGroup: /system.slice/docker.service
└─17988 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

You can also check the information about Docker with the following command:

sudo docker info

You should get the following output:

Client:
Debug Mode: false

Server:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 1
Server Version: 19.03.2
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
init version: fec3683
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 4.19.0-5-amd64
Operating System: Debian GNU/Linux 10 (buster)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 987.5MiB
Name: debian
ID: DNIZ:KB6U:H3MN:RURG:G2DW:PGSF:2TIS:OPCF:RSNQ:RCGR:ZOCC:U6MF
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false

Step 2a: Install a Specific Version of Docker

In some cases, you need to install a specific version of Docker on your system. In this case, first list the available versions of Docker by running the following command:

sudo apt-cache madison docker-ce

You should see all the available version of Docker in the following output:

docker-ce | 5:19.03.2~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:19.03.1~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:19.03.0~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.9~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.8~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.7~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.6~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.5~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.4~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.3~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.2~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.1~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 5:18.09.0~3-0~debian-buster | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 18.06.3~ce~3-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 18.06.2~ce~3-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 18.06.1~ce~3-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 18.06.0~ce~3-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 18.03.1~ce-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 18.03.0~ce-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 17.12.1~ce-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages
docker-ce | 17.12.0~ce-0~debian | https://download.docker.com/linux/debian buster/stable amd64 Packages

Next, you can install your desired version of Docker with the following command:

sudo apt-get install docker-ce=

You can replace the with the version you want to install as shown in the above list.

For example:

sudo apt-get install docker-ce=18.03.1~ce-0~debian

Step 4: Run the Docker Command Without Sudo

By default, you will need to run Docker command with sudo privileges. If you want to run Docker command without specifying the sudo command, then you will need to add your username to the Docker group.

You can add your username to the Docker group with the following command:

sudo usermod -aG docker username

Now, log out from the server and log in again with your username to apply for the new group membership. Now, you can run any Docker command without specifying sudo with Docker.

Working with Docker

At this point, Docker is installed and running on your system. Now, we will learn how to pull an image and run the container with Docker.

First, search all the images available for the Debian operating system with the following command:

docker search debian

You should see all the images in the following output:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED
ubuntu Ubuntu is a Debian-based Linux operating sys… 9956 [OK]
debian Debian is a Linux distribution that's compos… 3214 [OK]
arm32v7/debian Debian is a Linux distribution that's compos… 60
itscaro/debian-ssh debian:jessie 25 [OK]
arm64v8/debian Debian is a Linux distribution that's compos… 21
samueldebruyn/debian-git a minimal docker container with debian and g… 21 [OK]
i386/debian Debian is a Linux distribution that's compos… 10
multiarch/debian-debootstrap multiarch ports of debian-debootstrap 9
eboraas/debian Debian base images, for all currently-availa… 8 [OK]
vergissberlin/debian-development Docker debian image to use for development, … 6 [OK]
debian/eol End of Life Debian versions (pointing at arc… 5
smartentry/debian debian with smartentry 4 [OK]
ppc64le/debian Debian is a Linux distribution that's compos… 4
vicamo/debian Debian docker images for all versions/archit… 3
s390x/debian Debian is a Linux distribution that's compos… 2
arm32v5/debian Debian is a Linux distribution that's compos… 2
vpgrp/debian Docker images of Debian. 2
holgerimbery/debian debian multiarch docker base image 1
dockershelf/debian Repository for docker images of Debian. Test… 1 [OK]
fleshgrinder/debian Debian base images for production and multis… 0 [OK]
spritsail/debian-builder A Docker image based on debian:slim ideal fo… 0 [OK]
casept/debian-amd64 A debian image built from scratch. Mostly fo… 0
amd64/debian Debian is a Linux distribution that's compos… 0
jdub/debian-sources-resource Concourse CI resource to check for updated D… 0 [OK]
1and1internet/debian-9-nginx-php-7.2-wordpress-4 debian-9-nginx-php-7.2-wordpress-4 0

Now, download the latest version of the Debian image from the above list with the following command:

docker pull debian

Once downloaded, you should get the following output:

Using default tag: latest
latest: Pulling from library/debian
4a56a430b2ba: Pull complete
Digest: sha256:e25b64a9cf82c72080074d6b1bba7329cdd752d51574971fd37731ed164f3345
Status: Downloaded newer image for debian:latest
docker.io/library/debian:latest

You can also list the downloaded image with the following command:

docker images

You should get the following output:

REPOSITORY TAG IMAGE ID CREATED SIZE
debian latest c2c03a296d23 6 days ago 114MB

Now, run a container using the latest Debian image with the following command:

docker run -it debian

You should get the shell interface of a Debian container:

[email protected]:/#

You can exit from the container with the following command:

[email protected]:/#exit

You can also list your active or inactive container with the following command:

docker ps -a

Output:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
114ef7960999 debian "bash" About a minute ago Exited (0) 16 seconds ago sharp_booth

You can also start the Debian container by specifying Container ID (114ef7960999) as shown below:

docker container start 114ef7960999

Now, attach the shell interface of a Debian container with the following command:

docker attach 114ef7960999
Output:
[email protected]:/#

Delete a Docker Container and Image

You can easily remove unused containers and images that consume significant disk space.

To remove the Docker container, first list all the container with the following command:

docker container ls -a

You should see the following output:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
114ef7960999 debian "bash" 19 hours ago Exited (0) 19 hours ago sharp_booth

Next, if your container is running, you will need to stop the container before removing it.

You can stop the running container with the following command:

docker container stop 114ef7960999

Next, remove the container with the following command:

docker container rm 114ef7960999

You can also remove all stopped containers by just running the following command:

docker container prune

You should see the following warning message:

WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y

Type y and hit Enter to continue:

Deleted Containers:
114ef7960999f41bb9c4bba2cf5c28e425a00175ab20ed739213f16961b3897e

Total reclaimed space: 35B

To remove the Docker image, you will need to find the ID of the image you want to remove.

You can find the image ID with the following command:

docker image ls

Output:

REPOSITORY TAG IMAGE ID CREATED SIZE
debian latest c2c03a296d23 7 days ago 114MB

Now, remove the image with the following command:

docker image rm c2c03a296d23

You should get the following output:

Untagged: debian:latest
Untagged: [email protected]:e25b64a9cf82c72080074d6b1bba7329cdd752d51574971fd37731ed164f3345
Deleted: sha256:c2c03a296d2329a4f3ab72a7bf38b78a8a80108204d326b0139d6af700e152d1
Deleted: sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d

Note: To remove the image, you will have to remove the container first.

You can also remove all unused images at a time by just running the following command:

docker image prune -a

In the above tutorial, we have learned how to install Docker on a Debian 10 VPS. We have also learned how to pull an image, run container, start and stop the container.

Related posts:

  1. Dockerizing LEMP Stack with Docker-Compose on Ubuntu
  2. Docker Guide: Installing Traefik - a Modern Reverse Proxy for Microservices
  3. Docker For Windows: Create a Linux Container on Windows 10
  4. Updated version of Debian Linux 8/9 has been released
  5. Install Docker On Linux Ubuntu 20.04
  6. How to Install Docker in Fedora [Beginner’s tutorial]
  7. Container: Docker Compose on Ubuntu 16.04
  8. New Features Coming to Debian 10 Buster Release
  9. List of PPA Repositories for Ubuntu 17.04 Zesty Zapus
  10. How to Install Docker Compose on CentOS 7

Filed Under: Linux Tagged With: debian, docker, install

Primary Sidebar

Popular posts

  • 5 Ways to Fix “Your SIM sent a Text Message” Issue on iPhone
  • 3 Ways to Disable GetApps on Xiaomi, Redmi, and Poco Phones Running MIUI
  • GeForce Experience not finding games? Fix it fast
  • How To Extract & Install tar.gz Files In Ubuntu
  • How to Highlight Duplicates in Google Sheets
  • Discord Stream Has No Sound? 6 Ways to Fix
  • How to check if your Android device supports Widevine DRM
  • Exclamation Mark on Network Signal, Mobile Data Not Working? 8 Ways to Fix
  • How to find a lost Apple Pencil using your iPad (1st and 2nd gen)
  • 8 Best Sites to Read Manga Online for Free
  • 3 Ways to Hide Tabs in Google Chrome
  • How to Fix YouTube Server Connection Error [400] on Android
  • How to Track a Stolen or Lost Nintendo Switch
  • How To Search On Google Using Image or Video
  • How To Calculate CAGR in Excel
  • Microsoft Edge's newest feature? Shopping in Microsoft Edge
  • How to Change the Last Modified Date, Creation Date, and Last Accessed Date for Files and Folders

Footer

Tags

Amazon android Apple Asus available download: edge feature features first free from galaxy Game games gaming gets google install Intel iPhone launches linux Microsoft more OnePlus phone release released review: samsung series support this Ubuntu update using video watch what will windows with xbox your

Archives

  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org