3.9.16.2 Установка и настройка Portainer
Установка Portainer
Установка Portainer из репозитория ОС
Запуск Portainer путем создания контейнера в docker
Веб-интерфейс Portainer
Создание пользовательских контейнеров
Подключение внешних реестров docker-образов
Portainer Agent
Настройка и добавление агента в режиме Agent из репозитория ОС
Настройка и добавление агента в режиме Agent путем создания контейнера в docker
Настройка и добавление агента в режиме Edge Agent из репозитория ОС
Настройка и добавление агента в режиме Edge Agent путем создания контейнера в docker
Стеки в Portainer
Шаблоны в Portainer
Окружение
- Версия ОС: 8
- Конфигурация ОС: Рабочая станция, Сервер графический
- Редакция ОС: Стандартная, Образовательная
- Версия ПО: portainer-ce-2.39.2-1, portainer-ce-agent-2.39.2-1, docker-ce-4:29.5.1-1, docker-ce-cli-4:29.5.1-1
Portainer — веб-интерфейс для управления контейнерами Docker и кластерами Kubernetes. Управление контейнерами и сервисами производится напрямую через браузер (без использования командной строки).
К основным возможностям Portainer относятся:
- создание, запуск, остановка, перезапуск и удаление контейнеров;
- просмотр журналов событий, метрик производительности и состояния контейнеров;
- подключение публичными (например, Docker Hub) и приватными реестрами для хранения и развертывания образов;
- управление стеками Docker Compose, а также поддержка Docker Swarm и Kubernetes для оркестрации контейнеров;
- подключение к нескольким серверам или кластерам через Portainer Agent, что позволяет контролировать всю инфраструктуру из одного интерфейса.
Установка Portainer
Установка и запуск Portainer возможна двумя способами:
- путем установки пакетов из репозитория РЕД ОС;
- путем запуска из docker-образа.
Далее будет рассмотрен каждый из способов.
Установка Portainer из репозитория ОС
Для установки portainer из репозитория РЕД ОС выполните команду (потребуются права администратора):
sudo dnf install portainer-ce
Запустите и добавьте в автозагрузку службу portainer:
sudo systemctl enable --now portainer.service
Убедитесь, что служба активна, проверив ее статус:
sudo systemctl status portainer.service
В статусе должно отображаться active(running).
Для корректной работы в Portainer должен быть установлен и активен docker. Подробную информацию по установке docker см. в нашей инструкции «Установка и настройка docker».
Дальнейшая работа с Portainer производится в веб-интерфейсе.
Запуск Portainer путем создания контейнера в docker
Примечание.
Предварительно должен быть установлен и активен docker. Приведенные далее команды должны выполняться от имени пользователя, обладающего необходимыми разрешениями на взаимодействие с Docker. Подробную информацию по установке docker и настройке доступа к среде контейнеризации см. в нашей инструкции «Установка и настройка docker».
Создайте том хранения данных:
docker volume create portainer_data
Проверьте, что том создан:
docker volume ls
Вывод команды:
DRIVER VOLUME NAME local portainer_data
Запустите контейнер, используя docker-образ Portainer, представленный в реестре docker-образов РЕД ОС:
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data registry.red-soft.ru/ubi8/portainer:latest
где:
-d— запуск в фоновом режиме;-p 8000:8000,-p 9443:9443— проброс портов (8000— для HTTP-соединений,9443— для HTTPS-соединений);--name portainer— имя контейнера;--restart=always— автоматический запуск контейнера после перезапуска хостовой ОС;-v /var/run/docker.sock:/var/run/docker.sock— проброс сокета демона Docker из хостовой ОС в контейнер, что позволяет управлять другими контейнерами;-v portainer_data:/data— подключение тома portainer_data к каталогу /data внутри контейнера;registry.red-soft.ru/ubi8/portainer:latest— необходимый образ.
Дальнейшая работа с Portainer производится в веб-интерфейсе.
Веб-интерфейс Portainer
Получить доступ к Portainer можно через веб-интерфейс на порту 9443. Для этого в адресной строке браузера пропишите https://<IP-адрес_сервера_Portainer>:9443.
Будет открыта страница с веб-интерфейсом Portainer и формой для создания нового пользователя, под которым будет производиться вход в веб-интерфейс. Задайте имя пользователя и пароль. Пароль должен быть сложным и содержать не менее 12 символов.
Процесс создания администратора веб-интерфейса Portainer ограничен по времени. В случае если пользователь не был создан в течение отведенного промежутка времени, необходимо перезапустить службу portainer:
sudo systemctl restart portainer.service
Нажмите «Create user».

После создания пользователя будет открыта приветственная страница.

Кнопка «Get Started» подразумевает локальную работу с Portainer — все контейнеры будут запускаться локально (на текущей машине). Информация по локальной работе с Portainer приведена в пункте «Создание пользовательских контейнеров».
Кнопка «Add Environments» подразумевает добавление новых (удаленных) окружений (агентов) для управления через единый интерфейс Portainer. Информация по работе с агентами приведена в пункте «Portainer Agent».
Создание пользовательских контейнеров
Portainer позволяет запускать контейнеры локально — на текущей машине с установленным сервером Portainer.
По нажатии кнопки «Get Started» на приветственной странице будет открыта страница с доступными окружениями Portainer – в текущем примере доступно окружение local — текущая машина, с установленным сервером Portainer.

Для отображения более подробной информации о среде Portainer нажмите на имя окружения — local. На вкладке «Dashboard» доступна общая информация об окружении, такая как количество docker-образов, контейнеров, сетей, томов данных и пр.

Для создания собственного контейнера перейдите во вкладку «Containers» и нажмите «Add container».

Будет открыта форма создания контейнера, в которой необходимо указать имя контейнера и docker-образ, из которого контейнер будет развернут, настроить сеть и доступ. Для создания контейнера нажмите «Deploy the container».
В качестве примера будет развернут веб-сервер nginx.

При успешном создании контейнера будет выведено соответствующее информационное сообщение, а также в списке контейнеров будет отображен его статус. При успешном запуске контейнера в статусе должно отображаться running.

Для проверки корректности работы контейнера в поисковой строке браузера введите IP-адрес локальной машины и порт, который получил контейнер (в примере 32768).
Подключение внешних реестров docker-образов
Реестр docker-образов — это специализированное хранилище (registry) для docker-образов, которое используется Portainer для извлечения и развертывания контейнеров.
Для добавления внешнего реестра необходимо в разделе «Administration» открыть вкладку «Registries» и нажать «Add registry».

В форме добавления реестров выберите тип реестра и укажите имя и адрес реестра. Например, для добавления реестра docker-образов РЕД СОФТ выберите:
- тип реестра – Custom registry;
- имя – registry.red-soft.ru;
- адрес – https://registry.red-soft.ru/.
Нажмите «Add registry».

При успешном добавлении реестра будет выведено соответствующее информационное сообщение, а также обновлен список доступных реестров.

Portainer Agent
Portainer Agent — легковесный сервисный компонент Portainer, который устанавливается на удаленные серверы (или узлы) для обеспечения взаимодействия с Portainer Server. Portainer Agent позволяет безопасно и эффективно управлять удаленными Docker-окружениями через основной интерфейс Portainer.
Для обеспечения централизованного управления на каждом удаленном сервере (или узле) необходимо развернуть Portainer Agent.
Добавление агентов в основной интерфейс Portainer доступно в двух вариантах — Agent и Edge Agent. Основное различие заключается в способе подключения.
При использовании стандартного агента (Agent) для подключения к серверу Portainer необходимо открыть порт на стороне агента.
При использовании Edge Agent подключение осуществляется в обратном направлении — Edge Agent инициирует соединение с сервером Portainer, поэтому открывать порты на стороне Edge Agent не требуется.
Настройка и добавление Portainer Agent возможна двумя способами:
- путем установки пакетов из репозитория РЕД ОС;
- путем запуска агента из docker-образа.
Далее будет рассмотрен каждый из способов.
Настройка и добавление агента в режиме Agent из репозитория ОС
Для развертывания Portainer Agent в режиме Agent на каждый удаленный сервер (или узел) необходимо установить пакет portainer-ce-agent (потребуются права администратора):
sudo dnf install portainer-ce-agent
Затем запустить службу portainer-agent:
sudo systemctl enable --now portainer-agent.service
Для корректной работы в Portainer Agent должен быть установлен и активен docker. Подробную информацию по установке docker см. в нашей инструкции «Установка и настройка docker».
После этого агент необходимо добавить в основной интерфейс Portainer.
Для добавления агента, установленного из репозитория РЕД ОС, в режиме Agent в основном интерфейсе Portainer в разделе «Administration» откройте вкладку «Environment-related» — «Environments». Нажмите «Add environment».

В открывшейся форме выберите окружение – Docker Standalone и нажмите «Start Wizard».

Укажите данные агента:
- тип агента — Agent;
- имя агента — укажите понятное имя агента (в примере repo-agent);
- IP-адрес агента — укажите данные для подключения агента в формате
<IP-адрес_агента>:<порт>(в примере 192.168.122.79:9001). Порт по умолчанию для подключения агента — 9001.
Нажмите «Connect».

При успешном добавлении агента будет выведено соответствующее информационное сообщение.
Для просмотра списка добавленных агентов перейдите на вкладку «Environment-related» — «Environments» или на вкладку «Home».
После этого можно удаленно разворачивать и управлять контейнерами на подключенном агенте.
Настройка и добавление агента в режиме Agent путем создания контейнера в docker
Примечание.
Предварительно должен быть установлен и активен docker. Приведенные далее команды должны выполняться от имени пользователя, обладающего необходимыми разрешениями на взаимодействие с Docker. Подробную информацию по установке docker и настройке доступа к среде контейнеризации см. в нашей инструкции «Установка и настройка docker».
Для добавления агента в режиме Agent в основном интерфейсе Portainer в разделе «Administration» откройте вкладку «Environment-related» — «Environments». Нажмите «Add environment».

В открывшейся форме выберите окружение – Docker Standalone и нажмите «Start Wizard».

Укажите данные агента:
- тип агента — Agent;
- имя агента — укажите понятное имя агента (в примере docker-agent);
- IP-адрес агента — укажите данные для подключения агента в формате
<IP-адрес_агента>:<порт>(в примере 192.168.122.76:9001). Порт по умолчанию для подключения агента — 9001.
Также на странице будет сформирована команда для настройки Portainer Agent. Скопируйте сформированную команду.

В команде указаны все необходимые для запуска агента данные, за исключением названия docker-образа (в примере подсвечен красным). Вместо указанного образа необходимо вписать название docker-образа Portainer Agent из реестра docker-образов РЕД ОС — registry.red-soft.ru/ubi8/portainer-agent:latest.
Скопированную команду необходимо выполнить на удаленном сервере (или узле). Итоговый вид команды (в рамках текущего примера) будет иметь вид:
docker run -d \
-p 9001:9001 \
--name portainer_agent \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/docker/volumes:/var/lib/docker/volumes \
-v /:/host \
registry.red-soft.ru/ubi8/portainer-agent:latest
где:
-d— запуск в фоновом режиме;-p 9001:9001— проброс порта;--name portainer_agent— имя контейнера;--restart=always— автоматический запуск контейнера после перезапуска хостовой ОС;-v /var/run/docker.sock:/var/run/docker.sock— проброс сокета демона Docker из хостовой ОС в контейнер (позволяет управлять другими контейнерами);-v /var/lib/docker/volumes:/var/lib/docker/volumes— подключение каталога, в котором хранятся все данные томов (volumes) Docker на хосте, в тот же путь внутри контейнера;-v /:/host— подключение корневой файловой системы хоста (/) в каталог/hostвнутри контейнера (позволяет агенту получить доступ к файловой системе хоста);registry.red-soft.ru/ubi8/portainer-agent:latest— необходимый образ.
Вернитесь в основной интерфейс Portainer и нажмите «Connect».
При успешном добавлении агента будет выведено соответствующее информационное сообщение.
Для просмотра списка добавленных агентов перейдите на вкладку «Environment-related» — «Environments» или на вкладку «Home».
После этого можно удаленно разворачивать и управлять контейнерами на подключенном агенте.
Настройка и добавление агента в режиме Edge Agent из репозитория ОС
Для развертывания Portainer Agent в режиме Edge Agent на каждый удаленный сервер (или узел) необходимо:
1. Установить пакет portainer-ce-agent (потребуются права администратора):
sudo dnf install portainer-ce-agent
2. Открыть файл /var/lib/portainer-agent/agent.env и изменить значения для параметров EDGE и EDGE_INSECURE_POLL с false на true:
EDGE=true EDGE_INSECURE_POLL=true
Примечание.
Параметр EDGE_INSECURE_POLL=true должен быть указан, если корневые сертификаты не используются.
3. Запустить службу portainer-agent:
sudo systemctl enable --now portainer-agent.service
Для корректной работы в Portainer Agent должен быть установлен и активен docker. Подробную информацию по установке docker см. в нашей инструкции «Установка и настройка docker».
После этого агент необходимо добавить в основной интерфейс Portainer.
Для добавления агента, установленного из репозитория РЕД ОС, в режиме Edge Agent в основном интерфейсе Portainer в разделе «Administration» откройте вкладку «Environment-related» — «Environments». Нажмите «Add environment».

В открывшейся форме выберите окружение – Docker Standalone и нажмите «Start Wizard».

Укажите данные агента:
- тип агента — Edge Agent Standart;
- имя агента — укажите понятное имя агента (в примере repo-edge-agent);
- адрес сервера Portainer — проверьте корректность данных для подключения агента в формате
https://<IP-адрес_сервера>:<порт>(в примере https://192.168.122.57:9443).
Нажмите «Create».

Будет открыта дополнительная секция «Join token», в которой будет отображен токен подключения. Скопируйте токен.

Откройте новую вкладку браузера и в адресной строке пропишите IP-адрес добавляемого Edge-агента. Будет открыта страница связки, на которой в текстовое поле нужно вставить скопированный ранее токен и нажать кнопку «Submit».

Данная страница доступна ограниченное количество времени, после чего потребуется перезагрузка службы Portainer Agent:
sudo systemctl restart portainer-agent.service
Если привязка прошла успешно, на странице будет выведено сообщение вида Agent setup OK. You can close this page.
Для просмотра списка добавленных агентов перейдите на вкладку «Environment-related» — «Environments» или на вкладку «Home».
Настройка и добавление агента в режиме Edge Agent путем создания контейнера в docker
Примечание.
Предварительно должен быть установлен и активен docker. Приведенные далее команды должны выполняться от имени пользователя, обладающего необходимыми разрешениями на взаимодействие с Docker. Подробную информацию по установке docker и настройке доступа к среде контейнеризации см. в нашей инструкции «Установка и настройка docker».
Для добавления агента в режиме Edge Agent в основном интерфейсе Portainer в разделе «Administration» откройте вкладку «Environment-related» — «Environments». Нажмите «Add environment».

В открывшейся форме выберите окружение – Docker Standalone и нажмите «Start Wizard».

Укажите данные агента:
- тип агента — Edge Agent Standart;
- имя агента — укажите понятное имя агента (в примере docker-edge-agent);
- адрес сервера Portainer — проверьте корректность данных для подключения агента в формате
https://<IP-адрес_сервера>:<порт>(в примере https://192.168.122.57:9443).
Нажмите «Create».

Будет открыта дополнительная секция «Join token», в которой будет отображен токен подключения, а также сформирована команда для настройки Portainer Agent. Скопируйте сформированную команду.

В команде указаны все необходимые для запуска агента данные, за исключением названия docker-образа (в примере подсвечен красным). Вместо указанного образа необходимо вписать название docker-образа Portainer Agent из реестра docker-образов РЕД ОС — registry.red-soft.ru/ubi8/portainer-agent:latest.
Скопированную команду необходимо выполнить на удаленном сервере (или узле). Итоговый вид команды (в рамках текущего примера) будет иметь вид:
docker run -d \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /var/lib/docker/volumes:/var/lib/docker/volumes \ -v /:/host \ -v portainer_agent_data:/data \ --restart always \ -e EDGE=1 \ -e EDGE_ID=fc395d12-c65c-4a86-95ab-aa8ce49addab \ -e EDGE_KEY=aHR0cHM6Ly8xOTIuMTY4LjEyMi41Nzo5NDQzfDE5Mi4xNjguMTIyLjU3OjgwMDB8V25FbGNFbGVIV2RodG4waGIxZ0N3V0FLTyt4U2haUUpMbG1QdjN6dG14RT18NQ \ -e EDGE_INSECURE_POLL=1 \ --name portainer_edge_agent \ registry.red-soft.ru/ubi8/portainer-agent:latest
где:
-d— запуск в фоновом режиме;-v /var/run/docker.sock:/var/run/docker.sock— проброс сокета демона Docker из хостовой ОС в контейнер (позволяет управлять другими контейнерами);-v /var/lib/docker/volumes:/var/lib/docker/volumes— подключение каталога, в котором хранятся все данные томов (volumes) Docker на хосте, в тот же путь внутри контейнера;-v /:/host— подключение корневой файловой системы хоста (/) в каталог/hostвнутри контейнера (позволяет агенту получить доступ к файловой системе хоста);-v portainer_agent_data:/data— создание тома portainer_agent_data и проброс в каталог /data внутри контейнера;--restart=always— автоматический запуск контейнера после перезапуска хостовой ОС;-e EDGE=1— активация режима Edge;-e EDGE_ID=fc395d12-c65c-4a86-95ab-aa8ce49addab— уникальный идентификатор агента;-e EDGE_KEY=aHR0cHM6Ly8xOTIuMTY4LjEyMi41Nzo5NDQzfDE5Mi4xNjguMTIyLjU3OjgwMDB8V25FbGNFbGVIV2RodG4waGIxZ0N3V0FLTyt4U2haUUpMbG1QdjN6dG14RT18NQ— уникальный ключ авторизации (токен) для установления соединения с основным сервером Portainer;-e EDGE_INSECURE_POLL=1— разрешить агенту использовать незащищенное соединение;--name portainer_agent— имя контейнера;registry.red-soft.ru/ubi8/portainer-agent:latest— необходимый образ.
Вернитесь в основной интерфейс Portainer и нажмите «Add another environment».
Для просмотра списка добавленных агентов перейдите на вкладку «Environment-related» — «Environments» или на вкладку «Home».
Стеки в Portainer
Стеки в Portainer являются инструментами для управления группами взаимосвязанных контейнеров и сервисов как единым целым. Они основаны на технологии Docker Compose и позволяют развертывать сложные приложения, состоящие из нескольких контейнеров, с помощью одного файла конфигурации — docker-compose.yml.
В Portainer доступно четыре режима создания стека:
- напрямую из Portainer в редакторе;
- загрузка из файла;
- загрузка из репозитория;
- создание шаблона.
В рамках текущей инструкции в качестве примера будет развернута база данных PostgreSQL с графическим интерфейсом PgAdmin напрямую из Portainer.
Для работы со стеками выберите любое доступное окружение и перейдите на вкладку «Stacks». Будет открыт список доступных стеков (изначально список пуст). Для добавления нового стека нажмите «Add stack».

Будет открыта форма создания стека, в которой необходимо:
- задать имя стека – например, stack1;
- выбрать режим создания стека – Web editor;
- в поле редактора вставить содержимое compose-файла, описывающего стек.

services:
postgresdb:
image: registry.red-soft.ru/ubi8/postgresql-17
environment:
- POSTGRESQL_USER=test_user
- POSTGRESQL_PASSWORD=test_password
- POSTGRESQL_DATABASE=test_db_1
- PGDATA=/var/lib/postgresql/data
ports:
- 5432:5432
volumes:
- ./postgresdb:/var/lib/postgresql/data
networks:
- postgres_stack
pgadmin:
image: registry.red-soft.ru/ubi8/pgadmin
environment:
- PGADMIN_DEFAULT_EMAIL=test@mail.ru
- PGADMIN_DEFAULT_PASSWORD=password
ports:
- 8080:80
depends_on:
- postgresdb
volumes:
- ./pgadmin:/root/.pgadmin
networks:
- postgres_stack
networks:
postgres_stack:
Также Portainer позволяет работать с переменными окружения, путем их ручного добавления или загрузки из файла.

После определения всех необходимых параметров нажмите «Deploy the stack». Процесс развертывания стека займет некоторое время. По завершении процесса развертывания будет отображен список доступных стеков.

Также во вкладке «Containers» будут отображены созданные контейнеры.
Для проверки корректности работы стека в поисковой строке браузера введите IP-адрес машины, на которой был запущен стек (в примере local), и порт, который получил контейнер pgadmin (в примере 8080).
Откроется форма авторизации, в которой необходимо указать данные для входа — значения параметров PGADMIN_DEFAULT_EMAIL и PGADMIN_DEFAULT_PASSWORD из compose-файла. При необходимости выберите язык интерфейса — Russian. Нажмите «Login».

После авторизации будет открыта главная страница pgAdmin. Нажмите «Add New Server» для создания нового подключения к серверу.
В форме регистрации сервера:
- на вкладке «General» — введите имя сервера — например, server1;
- на вкладке «Connection» — введите имя хоста и информацию о базе данных. Все введенные данные должны совпадать с соответствующими параметрами из compose-файла.
- нажмите кнопку «Save».
Если данные были заданы корректно, на вкладке «Servers» появится новое подключение.
Для завершения подключения к БД разверните содержимое базы данных test_db_1.
Подключение к базе данных завершилось успешно.
Шаблоны в Portainer
Шаблоны в Portainer — это предопределенные конфигурации для быстрого развертывания контейнеров, стеков или приложений. Шаблоны позволяют пользователям создавать стандартные окружения без необходимости вручную писать файлы docker-compose.yml или использовать команды docker.
Portainer позволяет создавать пользовательские шаблоны или использовать уже готовые.
В рамках текущей инструкции в качестве примера будет использован готовый шаблон WordPress.
Для работы с шаблонами выберите любое доступное окружение и перейдите на вкладку «Templates» — «Application». В поле «Category» выберите CMS. Будет выведен список доступных шаблонов. Из списка выберите WordPress.

Будет открыта форма развертывания шаблона, в которой необходимо:
- задать имя стека – например, wp_local;
- здать пароль базы данных – например, wp_password.
Нажмите «Deploy the stack».

По завершении процесса развертывания на вкладке «Containers» будет отображен список созданных контейнеров.

Когда контейнеры будут иметь статус Running, в поисковой строке браузера введите IP-адрес машины, на которой был запущен шаблон (в примере local), и порт, который получил контейнер wordpress (в примере 32770). Будет открыта панель настройки WordPress. Подробнее о первоначальной настройке WordPress см. в нашей инструкции «WordPress - инструмент управления сайтами».
Дата последнего изменения: 03.07.2026
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.