Введение
Docker — это платформа контейнеризации, позволяющая быстро создавать, тестировать и развертывать такие приложения, как переносные автономные контейнеры, которые можно запускать практически в любом месте.
В этом руководстве мы объясним, как установить Docker на Raspberry Pi, и рассмотрим основные концепции и команды Docker.
Предпосылки
Мы предполагаем, что Raspbian установлен на вашем Raspberry Pi. Докеру не нужен графический интерфейс и лучше использовать образ Raspbian Stretch Lite и включить SSH. Таким образом, ваш Raspberry Pi будет иметь гораздо больше вычислительной мощности и памяти, доступных для запуска контейнеров Docker.
Установите Докер на Raspberry Pi
Чтобы установить Docker на Raspberry Pi, достаточно выполнить несколько команд.
Сначала загрузите скрипт установки Docker с помощью следующей команды curl:
curl -fsSL https://get.docker.com -o get-docker.sh
После завершения загрузки запустите скрипт, набрав:
sh get-docker.sh
Скрипт обнаружит дистрибутив Linux, установит необходимые пакеты и запустит Docker.
Процесс может занять несколько минут, и по завершении скрипт сгенерирует информацию о версии Docker и о том, как использовать Docker в качестве пользователя без полномочий root.
Это все. Docker был установлен на вашей карте Pi.
Запуск команды Docker без Sudo
По умолчанию только пользователь с правами администратора может запускать команды Docker.
Чтобы запускать команды Docker от имени пользователя без полномочий root без добавления sudo
, вам необходимо добавить пользователя в группу докеров, созданную во время установки. Чтобы сделать это по типу:
sudo usermod -aG docker $USER
$USER
— это переменная среды, которая содержит ваше имя пользователя.
Выйдите из системы и войдите снова, чтобы обновить свое членство в группе.
Чтобы убедиться, что вы можете запускать команды docker без sudo
, выполните следующую команду, которая загрузит тестовый образ, запустит его в контейнере, распечатает сообщение «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@ee67tfc65c8c:/#
Как видно из приведенного выше вывода, после запуска контейнера командная строка меняется, что означает, что теперь вы работаете внутри контейнера.
Чтобы получить список запущенных контейнеров Docker, используйте следующую команду:
docker container ls
Если у вас нет запущенных контейнеров, вывод будет пустым.
Чтобы просмотреть все контейнеры, используйте параметр -a
:
docker container ls -a
Чтобы удалить один или несколько контейнеров, просто скопируйте идентификатор (или идентификаторы) контейнера и вставьте их после команды container rm
:
docker container rm c66980v5665r
Вывод
Вы узнали, как установить Docker на свой компьютер Raspberry Pi и как запускать контейнеры Docker. Дополнительные сведения по этой теме см. в официальной документации Docker.