Docker — это платформа для контейнеризации, которая позволяет быстро создавать, тестировать и развертывать приложения в виде переносимых, самодостаточных контейнеров, которые могут работать практически везде.
В этой статье мы расскажем, как установить Docker на Raspberry Pi, и рассмотрим основные концепции и команд Docker.
Мы предполагаем, что на вашем Raspberry Pi установлен Raspbian. Docker не нуждается в графическом интерфейсе, и лучше всего использовать образ Raspbian Stretch Lite и включить SSH. Таким образом, ваш Raspberry Pi будет иметь гораздо больше доступной вычислительной мощности и памяти для запуска контейнеров Docker.
Установка Docker на Raspberry Pi — это всего лишь несколько команд.
Сначала загрузите скрипт установки Docker, используя следующую команду curl:
curl -fsSL https://get.docker.com -o get-docker.sh
После завершения загрузки запустите скрипт, набрав:
sh get-docker.sh
Сценарий обнаружит дистрибутив Linux, установит необходимые пакеты и запустит Docker.
Процесс может занять несколько минут, и когда он будет завершен, скрипт выведет информацию о версии Docker и о том, как использовать Docker от имени пользователя без полномочий root.
Вот и все. Докер был установлен на вашей плате Pi.
По умолчанию только пользователь с правами администратора может выполнять команды Docker.
Чтобы запускать команды Docker от имени пользователя без полномочий root без предварительной подготовки sudo, вам необходимо добавить своего пользователя в группу Docker, которая создается во время установки. Чтобы сделать это по типу:
sudo usermod -aG docker $USER
Выйдите из системы и войдите снова, чтобы обновить членство в группе.
Чтобы убедиться, что вы можете запускать команды sudo в Docker без запуска следующей команды, которая загрузит тестовый образ, запустите его в контейнере, распечатайте сообщение «Hello from Docker» и выйдите:
docker container run hello-world
Теперь, когда Docker настроен на Raspberry Pi, давайте рассмотрим основные концепции и команды Docker.
Образ Docker состоит из серии слоев файловой системы, представляющих инструкции в образа Dockerfile, которые составляют исполняемое программное приложение. Образ — это неизменяемый двоичный файл, включающий приложение и все другие зависимости, такие как библиотеки, двоичные файлы и инструкции, необходимые для запуска приложения.
Большинство изображений Docker доступны на Docker Hub. Это облачная служба реестра, которая, помимо прочего, используется для хранения образов Docker в общедоступном или частном хранилище.
Чтобы найти изображение в реестре Docker Hub, используйте docker searchкоманду. Например, чтобы найти образ Debian, вы должны набрать:
docker search debian
Экземпляр изображения называется контейнером. Контейнер представляет собой среду выполнения для отдельного приложения, процесса или службы.
Возможно, это не самое подходящее сравнение, но если вы программист, вы можете рассматривать образ Docker как класс, а контейнер Docker как экземпляр класса.
Для запуска, остановки, удаления и управления контейнером используйте команду docker container. Например, следующая команда запустит контейнер Docker на основе образа Debian. Если у вас нет изображения локально, оно будет загружено первым:
docker container run debian
Контейнер Debian остановится сразу после загрузки, потому что у него нет долго выполняющегося процесса, и никакая другая команда не предоставляется. Контейнер загрузился, выполнил пустую команду и затем вышел.
Переключатель -it позволяет взаимодействовать с контейнером через командную строку. Для запуска интерактивного контейнера введите:
docker container run -it debian /bin/bash
root@ee86c8c81b3b:/#
Как видно из приведенного выше вывода, после запуска контейнера изменяется командная строка, что означает, что вы теперь работаете изнутри контейнера:
Чтобы вывести список активных контейнеров Docker, используйте следующую команду:
docker container ls
Если у вас нет запущенных контейнеров, вывод будет пустым.
Чтобы просмотреть как активные, так и неактивные контейнеры, передайте ему переключатель -a:
docker container ls -a
Чтобы удалить один или несколько контейнеров, просто скопируйте идентификатор контейнера (или идентификаторы) и вставьте их после команды container rm:
docker container rm c55680af670c
Вы узнали, как установить Docker на свой компьютер Raspberry Pi и как запускать контейнеры Docker. Для получения дополнительной информации по этой теме обратитесь к официальной документации Docker.
Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий ниже.