Установка Portainer: веб-интерфейс для управления Docker на Raspberry Pi

Portainer CE (Community Edition) — это бесплатная open-source утилита, которая предоставляет веб-интерфейс для управления Docker. Через браузер можно запускать, настраивать и удалять образы/ контейнеры/тома без запуска терминала. Это упрощает работу Docker новичкам и опытным пользователям: все операции выполняются через формы в браузере вместо ввода команд.

Portainer стабильно работает на микрокомпьютере Raspberry Pi благодаря низкому потреблению ресурсов. В этом руководстве мы установим утилиту через docker-compose: конфигурация описывается в одном файле, а запуск выполняется одной командой.

Установка Portainer через docker-compose.yml

Для установки Portainer сначала убедитесь, что на Raspberry Pi установлен Docker. Если его нет — выполните установку по этому руководству.

Хотя Portainer доступен на Docker Hub и его можно загрузить через docker pull:

Terminal
Copy

Мы будем использовать docker-compose. Такой подход имеет несколько преимуществ:

  • Конфигурации утилиты фиксируются в файле docker-compose.yml: параметры volumes, ports и restart.
  • Управление контейнером упрощается: запуск (docker compose up -d), остановка (docker compose stop) и удаление (docker compose down) выполняются короткими командами вместо длинных строк с флагами
  • При обновлении версии достаточно изменить тег образа в файле и выполнить docker compose up -d, без необходимости вспоминать все ранее использованные параметры

Создайте директорию для проекта и перейдите в неё:

Terminal
Copy

Создайте файл docker-compose.yml:

Terminal
Copy

Добавьте следующую конфигурацию:

docker-compose.yml
Copy

Из интересного в конфигурации:

  • Тег alpine-sts — облегченная версия официального образа на базе Alpine Linux. Она занимает меньше места и потребляет меньше памяти, что важно для Raspberry Pi.
  • Порт 9443 — стандартный HTTPS-порт Portainer CE начиная с версии 2.0. HTTP-порт 9000 больше не используется по умолчанию.
  • no-new-privileges:true — запрещает контейнеру повышать привилегии после запуска. Это снижает риски безопасности, особенно если устройство доступно в локальной сети.
  • /var/run/docker.sock:/var/run/docker.sock — монтирует сокет Docker-демона. Без него Portainer не сможет управлять другими контейнерами и получать информацию о системе.
  • portainer_data:/data — named volume для хранения настроек Portainer: логин администратора, пароли, конфигурации стеков. Данные сохраняются при перезапуске или обновлении контейнера.

Все готово. Теперь запустим контейнер:

Terminal
Copy

Успешный запуск Portainer: Docker автоматически создал сеть и volume, а контейнер перешел в статус Started.
Лог создания проекта: volume portainer_data и контейнер Portainer

Запуск веб-интерфейса Portainer

После запуска контейнера можно переходить к настройке. Поскольку Portainer установлен локально, сначала узнайте IP-адрес Raspberry Pi:

Terminal
Copy

Откройте браузер и перейдите по адресу https://[IP-адрес]:9443. Начиная с версии 2.0 Portainer CE работает только по HTTPS на порту 9443, а HTTP-порт 9000 больше не используется.

Появится начальный экран, где нужно создать учетную запись администратора:

Экран начальной настройки Portainer: создание пользователя admin с паролем не менее 12 символов.
При пером входе в Portainer потребуется создать администратора приложения
  • Username — придумайте и введите имя пользователя для администратора
  • Password — придумайте пароль администратора (минимум 12 символов)
  • Confirm password — повторите ввод пароля
  • Create user — кнопка создания нового пользователя-администратора

После создания учётной записи администратора откроется главная панель Portainer. Это веб-интерфейс для управления Docker: здесь можно работать с контейнерами, образами и сервисами без использования терминала.

Главная панель управления Portainer: обзор локального окружения Docker, список контейнеров и доступные действия.
Стартовый экран веб-интерфейса Portainer

Основные пункты меню веб-интерфейса Portainer

  • Dashboard. Главная страница Portainer. Отображает общую информацию о вашем Docker-окружении: количество запущенных и остановленных контейнеров, используемые ресурсы (CPU, память), версию Docker и статус подключения. Это ваш «обзорный экран» для быстрой оценки состояния системы.
  • Containers. Раздел для управления всеми контейнерами на Raspberry Pi. Здесь вы можете:
  • Просматривать список запущенных и остановленных контейнеров;
  • Запускать, останавливать, перезапускать или удалять их;
  • Просматривать логи и подключаться к терминалу внутри контейнера;
  • Создавать новые контейнеры через веб-форму без командной строки.
  • Images. Управление Docker-образами. В этом разделе можно:
  • Просматривать все образы, загруженные на устройство;
  • Удалять неиспользуемые (например, старые версии);
  • Загружать новые образы из Docker Hub;
  • Проверять размер образов. Особенно важно на Raspberry Pi с ограниченным местом на SD-карте.
  • Volumes. Управление постоянными томами. Тома позволяют сохранять данные после удаления контейнера (например, для сохранения конфигураций или базы данных). Здесь их можно:
  • Создавать, просматривать и удалять;
  • Защищать от потери данных при обновлении или сбое.
  • Networks. Управление сетевыми настройками Docker. По умолчанию все контейнеры подключены к сети bridge, но вы можете:
  • Создавать изолированные пользовательские сети (например, для группировки сервисов умного дома);
  • Просматривать, какие контейнеры в какой сети работают.
  • Registries. Настройка доступа к внешним репозиториям образов (реестрам). По умолчанию Portainer умеет работать с Docker Hub, но вы также можете:
  • Добавить приватный registry (например, GitLab Container Registry или ваш собственный);
  • Указать логин и пароль для доступа к закрытым образам;
  • Использовать свои образы в интерфейсе создания контейнеров без ручного docker login.

Итоги: установка Portainer через docker-compose

В этом руководстве мы установили Portainer CE на Raspberry Pi через docker-compose.yml. Конфигурация фиксирует образ (image), порты (ports), тома (volumes) и политику перезапуска (restart) в одном файле, что упрощает управление контейнером по сравнению с использованием длинных команд docker run. Мы разобрали назначение ключевых параметров: тег alpine-sts для экономии ресурсов, порт 9443 для HTTPS-доступа, монтирование Docker-сокета и named volume для сохранения настроек.

Portainer превращает работу с Docker в визуально наглядную задачу. Через браузер можно запускать контейнеры, читать логи, обновлять сервисы и управлять томами без запоминания команд. Это удобно для новичков и владельцев умного дома, которые планируют развернуть Home Assistant, Mosquitto или Node-RED.

Теперь, когда Portainer установлен и настроен, мы готовы к развёртыванию полезных сервисов. В следующих статьях покажем, как запустить Home Assistant и интегрировать его в Portainer для единого управления умным домом, а также рассмотрим работу с сетями, переменными окружения и зависимостями между сервисами в docker-compose.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *