Введение
Docker — это платформа контейнеризации, позволяющая быстро создавать, тестировать и развертывать такие приложения, как переносные автономные контейнеры, которые можно запускать практически в любом месте.
В этом руководстве мы объясним, как установить Docker на Debian 10 Buster, и рассмотрим основные концепции и команды Docker.
Установите Докер на Debian
Выполните следующие действия, чтобы установить последнюю стабильную версию Docker из репозиториев Docker.
Установите пакеты, необходимые для добавления нового репозитория через HTTPS:
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg2
Импортируйте ключ GPG репозитория с помощью следующей команды curl:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
В случае успеха команда вернет OK.
Добавьте стабильный репозиторий APT Docker в список репозиториев программного обеспечения вашей системы:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
$ (lsb_release -cs) вернет имя дистрибутива Debian. В данном случае бустер.
Обновите список пакетов apt и установите последнюю версию Docker CE (Community Edition):
sudo apt update
sudo apt install docker-ce
После завершения установки служба Docker запустится автоматически. Чтобы проверить это, введите:
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 Tue 2019-09-07 11:32:00 GMT; 1min 15s ago
Docs: https://docs.docker.com...
На момент написания этой статьи последняя стабильная версия Docker — 19.03.1:
docker -v
Docker version 19.03.1, build 74b1e89
Запуск команды Docker без Sudo
По умолчанию только root и пользователи с привилегиями sudo могут запускать команды Docker.
Если вы хотите запускать команды Docker без добавления sudo, вам нужно добавить пользователя в группу docker, созданную во время установки пакета Docker CE. Для этого введите:
sudo usermod -aG docker $USER
$ USER — это переменная среды, которая содержит ваше имя пользователя.
Выйдите из системы и войдите снова, чтобы обновить свое членство в группе.
После этого убедитесь, что вы можете запускать команды docker без ввода sudo:
docker container run hello-world
Команда загрузит тестовый образ, запустит его в контейнере, напечатает сообщение « Hello from Docker » и завершит работу.
Использование Докера
Теперь, когда вы установили Docker в Debian 10, давайте рассмотрим основные понятия и команды.
Докер-образы
Образ Docker состоит из ряда слоев файловой системы, которые представляют инструкции в образе Dockerfile, составляющие исполняемое программное приложение. Образ — это неизменяемый двоичный файл, который включает в себя приложение и все другие зависимости, такие как библиотеки, двоичные файлы и инструкции, необходимые для запуска приложения.
Большинство образов Docker доступны на Docker Hub. Это облачная служба реестра, которая, помимо прочего, используется для хранения образов Docker в общедоступном или частном репозитории.
Чтобы найти образ в реестре Docker Hub, используйте команду docker search. Например, чтобы найти образ Debian, введите:
docker search debian
Докер-контейнеры
Экземпляр изображения называется контейнером. Контейнер представляет собой среду выполнения для одного приложения, процесса или службы.
Чтобы запустить, остановить, удалить контейнер и управлять им, используйте команду docker container. Например, следующая команда запустит контейнер Docker на основе образа Debian. Если образ отсутствует локально, он будет загружен первым:
docker container run debian
Контейнер Debian остановится сразу после запуска, потому что у него нет длительного процесса, и никакие другие команды не даны. Контейнер запустился, выполнил пустую команду, а затем вышел.
Опция -it позволяет вам взаимодействовать с контейнером через командную строку. Чтобы запустить тип интерактивного контейнера:
docker container run -it debian /bin/bash
root@ff96b9b92c5d:/#
Как видно из приведенного выше вывода, после запуска контейнера командная строка меняется, что означает, что теперь вы работаете внутри контейнера:
Чтобы получить список активных контейнеров Docker, используйте следующую команду:
docker container ls
Если у вас нет запущенных контейнеров, вывод будет пустым.
Чтобы просмотреть как активные, так и неактивные контейнеры, используйте флаг -a:
docker container ls -a
Чтобы удалить один или несколько контейнеров, просто скопируйте идентификатор (или идентификаторы) контейнера и вставьте их после команды container rm:
docker container rm c55680af670c
Вывод
Установка Docker в Debian 10 — относительно простая операция. Docker — это стандарт де-факто для технологии контейнеров и важный инструмент для инженеров DevOps, а также их бесшовная интеграция и конвейер доставки.
Для получения дополнительной информации см. официальную документацию Docker.