• Home
  • Linux
  • Ubuntu
  • Debian
  • CentOS
  • Linux Commands
  • About Us
  • Donate
TecNStuff
Menu
  • Home
  • Linux
  • Ubuntu
  • Debian
  • CentOS
  • Linux Commands
  • About Us
  • Donate

How to Install and Use Docker on Debian 9

Written by Admin, Updated On July 21, 2019
debian, docker
How To Install and Use Docker on Debian 9

Docker application is used to manage application processes in container. Using docker you can build, test and deploy applications that can run anywhere as portable and self-sufficient containers. In this tutorial, we will learn how to install Docker on Debian 9 system.

Prerequisites#

Before you start install, you must have non-root user account with sudo privileges.

Install Docker on Debian#

We will install latest Docker package on Debian system from the Docker’s repositories. Following are the steps to install docker on Debian.

At first, update the package manager index list and upgrade the system to latest using below:

sudo apt update && sudo apt upgrade

We also need to install dependencies which are required to enable Docker repository.

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

Now Import the GPG key for repository using following curl command:

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

After that, add Docker repository to your system’s software repository list by typing:

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

Now Docker repository is enabled so update apt package manager index list again using below command:

sudo apt update

Install latest version of Docker Community Edition using below:

sudo apt install docker-ce

Once the installation completed the service of docker will start automatically. You can check it by issuing below command:

sudo systemctl status docker
Output
● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-07-02 08:36:43 EDT; 12min ago Docs: https://docs.docker.com Main PID: 4485 (dockerd) Tasks: 8 CGroup: /system.slice/docker.service └─4485 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
docker -v

You also can check the version of Docker using below command:

Output
Docker version 18.09.7, build 2d0083d

Executing docker command without sudo#

By default, Docker required sudo privileges to run. If you want to run docker command without sudo then you need to add your user to docker group. The docker group is created at the installation of docker CE package.

You should run below command to add user to docker group:

sudo usermod -aG docker $USER

After that, Log out and log back in to apply membership.

Run the below command to verify that you have added docker group :

id -nG
Output
tecnstuff sudo docker

How to Use Docker Command#

Below is the basic syntax for the docker command:

docker [option] [subcommand] [arguments]

You can get list of all docker subcommands by issuing below command:

docker

If you need any help about subcommand then you can use following command:

docker docker-subcommand --help

Upgrading Docker#

You can update docker new version when it is released. You just have to run below commands:

sudo apt update
sudo apt upgrade

Uninstalling Docker#

Uninstall process of Docker is same as any other packages installed using apt:

sudo apt purge docker-ce
sudo apt autoremove

Working with Docker Images#

Docker images are as a snapshot of a Docker container. Docker containers are built from Docker Images and these images are available on Docker Hub. It is a cloud-based registry service which managed by Docker Company.

Search Docker Images#

Use search sub command to search an image on Docker Hub registry.

For example, you can search for an Ubuntu image using below command:

docker search ubuntu
NAME                                                      DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
ubuntu                                                    Ubuntu is a Debian-based Linux operating sys…   7917                [OK]
dorowu/ubuntu-desktop-lxde-vnc                            Ubuntu with openssh-server and NoVNC            193                                     [OK]
rastasheep/ubuntu-sshd                                    Dockerized SSH service, built on top of offi…   156                                     [OK]
ansible/ubuntu14.04-ansible                               Ubuntu 14.04 LTS with ansible                   93                                      [OK]
ubuntu-upstart                                            Upstart is an event-based replacement for th…   87                  [OK]
neurodebian                                               NeuroDebian provides neuroscience research s…   50                  [OK]
ubuntu-debootstrap                                        debootstrap --variant=minbase --components=m…   38                  [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5      ubuntu-16-nginx-php-phpmyadmin-mysql-5          36                                      [OK]
nuagebec/ubuntu                                           Simple always updated Ubuntu docker images w…   23                                      [OK]
tutum/ubuntu                                              Simple Ubuntu docker images with SSH access     18
i386/ubuntu                                               Ubuntu is a Debian-based Linux operating sys…   13
ppc64le/ubuntu                                            Ubuntu is a Debian-based Linux operating sys…   12
1and1internet/ubuntu-16-apache-php-7.0                    ubuntu-16-apache-php-7.0                        10                                      [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mariadb-10   ubuntu-16-nginx-php-phpmyadmin-mariadb-10       6                                       [OK]
eclipse/ubuntu_jdk8                                       Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, …   6                                       [OK]
codenvy/ubuntu_jdk8                                       Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, …   4                                       [OK]
darksheer/ubuntu                                          Base Ubuntu Image -- Updated hourly             4                                       [OK]
1and1internet/ubuntu-16-apache                            ubuntu-16-apache                                3                                       [OK]
1and1internet/ubuntu-16-nginx-php-5.6-wordpress-4         ubuntu-16-nginx-php-5.6-wordpress-4             3                                       [OK]
1and1internet/ubuntu-16-sshd                              ubuntu-16-sshd                                  1                                       [OK]
pivotaldata/ubuntu                                        A quick freshening-up of the base Ubuntu doc…   1
1and1internet/ubuntu-16-healthcheck                       ubuntu-16-healthcheck                           0                                       [OK]
pivotaldata/ubuntu-gpdb-dev                               Ubuntu images for GPDB development              0
smartentry/ubuntu                                         ubuntu with smartentry                          0                                       [OK]
ossobv/ubuntu
...

You can see above all the images with versions. In addition, if the version is not specified then docker picks latest version which is available.

Download Docker Images#

You can download official build of image using pull command along with docker command. For example you would like to download Ubuntu 18.04 image, then you should issue below command:

docker image pull ubuntu

It will show output as below:

Output
Using default tag: latest latest: Pulling from library/ubuntu 6b98dfc16071: Pull complete 4001a1209541: Pull complete 6319fc68c576: Pull complete b24603670dc3: Pull complete 97f170c87c6f: Pull complete Digest: sha256:5f4bdc3467537cbbe563e80db2c3ec95d548a9145d64453b06939c4592d67b6d Status: Downloaded newer image for ubuntu:latest

You can list all downloaded images by typing:

docker image ls

Remove Docker Image#

If you want to remove downloaded docker image then you can remove using below command:

docker image rm ubuntu

Above command will remove ubuntu image from your system.

Docker Containers#

Docker container is an instance of Docker Image. A container represents a runtime for a single application, process, or service. In simple way we can say Docker image is a class and Docker container as an instance of a class. Using docker container command we can manage operations on a container.

Start Docker Container#

Below command will start a Docker container which is an instance of an image. If you don’t have the image locally, it will download it first:

docker container run ubuntu

In above command we have not provided any command so the container will bootup and ran an empty command and will exit at last.

You can interact with Ubuntu image using -it switch. Run below command to start an interactive container:

docker container run -it ubuntu /bin/bash
[root@748fh3304412 /]#

As you can see above the command prompt changed. Now you can execute command and interact with Ubuntu container directly.

List Docker Containers#

You can get list of all active docker containers using below command:

docker container ls

It will list all the active containers and if no one container is running then output will be empty.

Also you can list active and inactive containers issuing below command:

docker container ls -a

Remove Docker Containers#

You can remove docker containers using container id. So just copy container id and put it after container rm in below command:

docker container rm r70023ag870r

Conclusion#

You have learned how to install and use of docker on Debian 9 system. Also you learned how to download Docker images and manage Docker containers. To learn more about Docker check out the official Docker documentation.

If you have any question or suggestion, please leave a comment below.

If our content helps you, please consider buying us a coffee

Thank you for your support.

Share On
Share on Facebook
Share on Twitter
Share on Reddit
Share on Tumblr
 Previous Article How to List Installed Packages on Debian
Next Article   How to Install VirtualBox on Debian 9

Related Posts

  • How to Change Hostname Debian 11

    How to Change Hostname on Debian 11

    February 3, 2023
  • How to Install Python 3.11 on Debian 11

    How to Install Python on Debian 11

    January 25, 2023
  • How to Install Mongodb on Debian 11

    How to Install MongoDB on Debian 11 Linux

    January 11, 2023

Leave a Reply Cancel reply

DigitalOcean Referral Badge

Popular Posts

  • How to Install SSH Keys on Ubuntu 22.04
    How to Set up SSH Keys on Ubuntu 22.04 January 7, 2023
  • How to Install Mongodb on Debian 11
    How to Install MongoDB on Debian 11 Linux January 11, 2023
  • How to Install Puppet Agent on Ubuntu 22.04
    How to Install Puppet Agent on Ubuntu 22.04 January 22, 2023
  • How to Install Jenkins on Debian 11
    How to Install Jenkins on Debian 11 January 5, 2023
  • How to Change-Hostname Ubuntu 22.04
    How to Change Hostname on Ubuntu 22.04 January 19, 2023
© 2020 TecNStuff All rights reserved. This website is using and storing cookies on your browser. By using this website you agree our Privacy Policy.  Follow us -  Twitter | Facebook