Вступление
Docker - это приложение, которое позволяет развертывать программное обеспечение в виртуальных контейнерах. Он был написан на языке программирования Go. Из этого руководства вы узнаете, как установить Docker CE на Debian 9.
Docker CE - это «Community Edition», которая подходит для разработчиков и небольших команд.
Создать новый Vultr VPS
1 ГБ ОЗУ является минимальным требованием, хотя я рекомендую использовать как минимум 2 ГБ ОЗУ. 
Настройка и установка
Подключитесь к вашему серверу, используя SSH через Терминал на Mac или PuTTY на Windows.
ssh [email protected]
Замените " 203.1.113.1" на ваш IP-адрес сервера.
Вам будет предложено ввести « Yes» или « No», чтобы добавить отпечаток RSA сервера в список известных хостов. Наберите " Yes" и нажмите " Enter".
Теперь вы подключены как root, так что вам не нужно использовать sudo. Если вы подключаетесь как пользователь, вам нужно sudoбудет выполнить большинство действий.
На свежей машине, как root, обновление apt.
apt-get update
Установите пакеты, чтобы позволить apt использовать хранилище поверх HTTPS.
apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common -y
Добавьте официальный ключ GPG Докера.
curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -
Убедитесь , что отпечаток ключа равно: 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88.
apt-key fingerprint 0EBFCD88
Используйте следующую команду для настройки стабильного хранилища.
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable"
Обновите aptснова.
apt-get update
Установите Docker.
apt-get install docker-ce -y
Создать пользователя
Если вы не хотите запускать Docker от имени пользователя root, создайте пользователя без полномочий root.
adduser foo
Затем добавьте этого пользователя в группу Docker.
usermod -aG docker foo
Теперь перезапустите сервис Docker.
service docker restart
Убедитесь, что Docker CE установлен правильно, запустив hello-worldобраз.
docker run hello-world
Эта команда загружает тестовое изображение и запускает его в контейнере. Когда контейнер запускается, он печатает подобное сообщение и завершает работу.
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9a0669468bf7: Pull complete 
Digest: sha256:cf2f6d004a59f7c18ec89df311cf0f6a1c714ec924eebcbfdd759a669b90e711
Status: Downloaded newer image for hello-world:latest
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.
 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://cloud.docker.com/
For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/