Linux,  Raspberry Pi

Установка Portainer для Pi-hole на Raspberry Pi

В интернете много статей об установке Pi-hole в домашней сети. Эта статья не исключение, разве что, Pi-hole будет установлен средствами Portainer. Выбор Portainer в качестве окружения для Docker обусловлен отсутствием команд вводимых в терминале.

Что такое Pi-hole

Pi-hole это программное обеспечение с открытым исходным кодом, которое обеспечивает блокировку рекламы в сети. Блокировка осуществляется по спискам, которые содержат популярные домены используемые для рекламы. Есть даже возможность блокировать сетевые запросы к вредоносным доменам, если доменное имя содержится в списке блокировки.

Установка Portainer

Установка Docker на Raspberry Pi мы рассматривали ранее, поэтому перейдем сразу к установке Portainer.

Установить Portainer можно с помощью следующих команд:

restart always — позволяет не запускать каждый раз руками Portainer после перезагрузки Raspberry Pi.

В моем случае Raspberry Pi имеет ip 192.168.0.11

Первый вход и настройка Portainer

Переходим в графический интерфейс Portainer, для это нам потребуется ip адрес нашего Raspberry Pi и порт 9000.

http://192.168.0.11:9000

При первом входе, Portainer попросит установить пароль администратора.

Мы будем подключаться к локальной установке Docker, поэтому нажимаем Local и кнопку Connect.

Добавляем образ Pi-hole с помощью Portainer

В левой панели навигации нажимаем на Containers, выбираем Local, затем кнопку Add container. Дальше потребуется ввести имя для нового контейнера, затем необходимо указать образ докера. Вводим pihole/pihole:latest в качестве имени.

По умолчанию используется сетевой режим мост. В режиме моста необходимо настроить сопоставления портов между хост-системой и контейнером Docker, в котором работает Pi-hole. Кнопка Publish all exposed network ports to random host ports сопоставит все открытые порты на контейнере со случайными портами на хосте. К сожалению, такой вариант неправильный, поэтому порты нужно сопоставить вручную. Для этого жмем на кнопку publish a new network port и сопоставляем порты.

Для работы необходимы следующие порты:

80/TCP, 443/TCP, 53/TCP и 53/UDP.

В случае использовании встроенного DHCP-сервера в Pi-hole, требуется сопоставить порт 67/UDP.

Расширенные настройки контейнера

Необходимо настроить Volumes, чтобы сохранить файлы конфигурации при обновлении образа/контейнера Pi-hole новой версией.

Переходим на вкладку Network, указываем hostname и DNS.

На вкладке Env, добавляем поля для TZ (time zone), DNS и WEBPASSWORD (пароль веб-администрирования для Pi-hole).

Последнее, что нам нужно установить, — это политика перезапуска. Переходим на вкладку Restart policy, а затем нажимаем кнопку Unless stopped. Это означает, что контейнер Pi-hole всегда будет перезапущен, если произойдет сбой, и он также запустится после загрузки Raspberry Pi.

Теперь нажимаем кнопку Deploy the container и ожидаем разворачивания Pi-hole.

На вкладке Containers можно наблюдать статус:

PS

Избегая вопросов в комментариях

На всех скриншотах видно, что Portainer просит произвести обновление на свежую версию. Да, действительно, при установке Portainer используется старая версия, но точно рабочая!

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

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

Нажимая кнопку Отправить комментарий Я даю согласие на обработку персональных данных.