Гид по технологиям

Piwigo на Raspberry Pi: установка, настройка и безопасная эксплуатация

7 min read Фотохостинг Обновлено 10 Apr 2026
Piwigo на Raspberry Pi — установка и настройка
Piwigo на Raspberry Pi — установка и настройка

Piwigo с темой Pure Sky и несколькими изображениями

Что такое Piwigo и зачем запускать его на Raspberry Pi?

Piwigo — это система управления фотографиями с открытым исходным кодом (раньше называлась PhpWebGallery). Простыми словами: это веб-приложение для хранения, организации и публикации ваших снимков, которым вы управляете сами. Кратко:

  • Лицензия: свободное ПО (GNU GPL) — можно запускать, изучать, изменять и распространять.
  • Интерфейс: темы, мобильные клиенты, расширения.
  • Подходит для Raspberry Pi: работает даже на старых моделях при умеренной нагрузке.

Почему self-hosting? Главные преимущества:

  • Контроль над данными: фото остаются на вашем оборудовании.
  • Отсутствие коммерческих ограничений и неожиданных политик хранения.
  • Гибкость: свои темы, правила доступа, интеграции.

Важное: self-hosting требует базовых навыков системного администрирования и регулярного обслуживания (обновления, бэкапы, мониторинг).

Требования и подготовка Raspberry Pi

Коротко о минимуме для комфортной работы:

  • Raspberry Pi 3/4/Zero 2 — Pi 4 предпочтительнее при большой библиотеке.
  • SD/SSD: быстрый носитель для системы и метаданных; для большого каталога используйте внешний диск.
  • Память: 2–4 ГБ достаточно для домашней галереи; если планируете много одновременных пользователей — берите 4 ГБ и выше.
  • Сеть: стабильный интернет-канал и статический публичный IP или DDNS для внешнего доступа.

Подготовьте Raspberry Pi: обновите пакеты и установите необходимые компоненты (Apache, PHP, MariaDB/MySQL, curl). Далее — пошаговая настройка.

Подготовка системы и обновление пакетов

Запустите обновление пакетов перед установкой:

sudo apt update  
sudo apt upgrade

Общая рекомендация: периодически выполнять apt update/upgrade и перезагружать систему при необходимости.

Создание базы данных для Piwigo

Piwigo хранит метаданные в базе. В примере используется MariaDB.

Откройте MariaDB:

sudo mariadb

Выполните по очереди SQL-команды для создания базы и пользователя:

CREATE DATABASE piwigo;  
CREATE USER piwigo IDENTIFIED BY 'supertopsecretpassword';  
GRANT USAGE ON *.* TO piwigo@localhost IDENTIFIED BY 'supertopsecretpassword';  
GRANT ALL privileges ON piwigo.* TO piwigo@localhost;  
FLUSH PRIVILEGES;  
quit;

Примечание: замените ‘supertopsecretpassword’ на надёжный пароль, который вы храните в менеджере паролей.

Важно: используйте отдельного пользователя базы данных с ограниченными правами — только для Piwigo.

Настройка DNS и Apache

  1. В панели регистратора создайте A-запись на ваш публичный IP (host = @ или поддомен, если используете subdomain).
  2. Настройте виртуальный хост Apache. Создайте файл конфигурации:
cd /etc/apache2/sites-available/  
sudo nano piwigo.conf

В файле укажите порт 80 и вашу доменную имя и корень документа:

  
ServerName your-domain-name.tld  
DocumentRoot /var/www/piwigo/  

Сохраните файл и включите сайт, затем перезапустите Apache:

sudo a2ensite  
sudo service apache2 restart

Создайте директорию для Piwigo и назначьте правильного владельца:

sudo mkdir /var/www/piwigo/  
cd /var/www/piwigo/

Скачайте инсталлятор Piwigo в текущую папку:

sudo curl https://piwigo.org/download/dlcounter.php?code=netinstall -o install.php

Затем установите владельца файлов на пользователя Apache (www-data):

sudo chown -R www-data:www-data .

Установка Piwigo через веб-инсталлятор

Откройте браузер и перейдите по адресу:

https://your-domain-name.tld/install.php

Инсталлятор предложит выбрать язык и директорию установки. Если вы хотите, чтобы Piwigo был доступен по корню домена, оставьте поле «destination» пустым.

Загрузчик Piwigo: получить и распаковать архив

Нажмите «Retrieve and unzip Piwigo», затем проверьте содержимое:

ls -a /var/www/piwigo/

Если всё прошло успешно, нажмите «Install Piwigo now». На следующем экране укажите конфигурацию базы данных (название базы и пользователя — piwigo, пароль тот, который вы задали).

Экран базовой конфигурации Piwigo

Создайте учётную запись администратора в разделе Administration configuration и нажмите «Start installation». После установки обязательно удалите или защитите установочный файл по инструкции Piwigo.

Настройка HTTPS с помощью Certbot

Чтобы обеспечить безопасное соединение, используйте Certbot и Let’s Encrypt:

sudo certbot

Введите контактный email и выберите домен. Certbot автоматически получит и установит сертификаты. Затем проверьте автоматическое обновление сертификатов, например с помощью cron или systemd-timer (certbot обычно создаёт таймер сам).

Важно: перенаправляйте HTTP на HTTPS, чтобы все соединения были шифрованы.

Первые шаги в Piwigo: загрузка и организация фото

После входа в Piwigo вы увидите сообщение, что галерея пуста. Нажмите кнопку «I want to add photos», затем создайте альбом и загрузите фотографии — через диалог «Add photos» или перетянув файлы в браузер.

Сообщение о пустой галерее Piwigo

Загрузка больших объёмов может занять время. Piwigo поддерживает постраничный просмотр изображений в альбоме и позволяет устанавливать размеры по умолчанию, водяные знаки, комментарии и управление пользователями через Admin > Configuration.

Экран загрузки фотографий в Piwigo

Альбом Piwigo с набором изображений

Галерея тем Piwigo

Мобильный доступ и синхронизация

Piwigo имеет официальные мобильные приложения для iOS и Android, а также Android-версию в F-Droid (open source). Приложения облегчают загрузку фотографий прямо с телефона и позволяют создавать альбомы на ходу.

Безопасность и жёсткая конфигурация (hardening)

Короткий чеклист по безопасности:

  • Обновления: регулярно выполняйте apt upgrade и обновляйте PHP и плагины Piwigo.
  • Права: убедитесь, что каталоги имеют корректные права; web-пользователь (www-data) владеет только директориями, связанными с Piwigo.
  • TLS: включите HTTPS и отключите старые версии протоколов (TLS 1.0/1.1).
  • Защита от перебора: установите fail2ban для защиты от брутфорс-атак на SSH и веб-админку.
  • Ограничение доступа: при необходимости ограничьте доступ к /admin по IP или двухфакторной аутентификацией.
  • Удалите install.php и другие установочные файлы после установки.
  • Бэкап секретов: храните пароли и ключи в безопасном менеджере паролей.

Дополнительно: рассмотрите использование reverse proxy (nginx) перед Apache для тонкой настройки SSL и кеширования.

Резервное копирование и восстановление

Минимальная методология резервного копирования:

  1. Резервируйте папку с файлами Piwigo (/var/www/piwigo/galleries, user uploads и конфиги).
  2. Резервируйте базу данных MariaDB (mysqldump).
  3. Храните копии вне устройства (диска): внешний NAS, облачный бэкап или другой сервер.

Пример команд (ориентир):

  • Бэкап базы:
mysqldump -u root -p piwigo > /path/to/backup/piwigo.sql
  • Архивация загрузок:
tar czvf /path/to/backup/piwigo-files-$(date +%F).tar.gz /var/www/piwigo/galleries

Проверяйте бэкапы, восстанавливайте их на тестовой машине и документируйте процедуру восстановления.

Отладка и частые проблемы

  1. 500 / 502 ошибки: проверьте логи Apache (/var/log/apache2/error.log) и логи PHP.
  2. Ошибка подключения к базе: проверьте credentials в файле конфигурации Piwigo и доступ mariadb.
  3. Проблемы с правами: убедитесь, что www-data владеет релевантными каталогами и имеет право записывать превью.
  4. SSL не применяется: повторите certbot –apache или проверьте виртуальный хост для порта 443.
  5. Медленная загрузка миниатюр: настройте кеширование и убедитесь, что PHP имеет достаточно памяти.

Критерии приёмки (после установки):

  • Веб-интерфейс открывается по HTTPS без ошибок.
  • Вход под администратором работает.
  • Можно создать альбом и загрузить тестовую фотографию.
  • Превью генерируются, а права файлов корректны.

Роли и чеклисты (кто что делает)

Администратор:

  • Настроить DNS и Apache/HTTPS.
  • Обеспечить бэкап и обновления.
  • Управлять пользователями и правами.

Фотограф/пользователь:

  • Загружать фотографии через мобильное приложение или браузер.
  • Организовывать альбомы и метаданные.

Технический поддержник:

  • Мониторить загрузку диска и работу MariaDB.
  • Проводить тесты восстановления бэкапов.

Альтернативы и когда Piwigo не подойдёт

Когда стоит выбрать другое решение:

  • Большие коллекции с автоматическим распознаванием лиц и продвинутой обработкой (AI) — рассмотрите PhotoPrism или коммерческие сервисы.
  • Если вам нужна тесная интеграция с файловым хранилищем и офисными документами — Nextcloud Photos может быть лучше.
  • Для простой минималистичной галереи без сервера — Lychee или статические генераторы галерей.

Piwigo отлично подходит, если вы хотите гибкость тем и плагинов, простоту управления пользователями и открытость исходников.

Конфигурационные рекомендации и лучшие практики

  • Настройте квоты для пользователей, если на сервере мало места.
  • Используйте внешний диск или NAS для хранения оригиналов.
  • Регулярно удаляйте устаревшие превью и запускайте оптимизацию базы.

Приватность и соответствие требованиям (GDPR и прочее)

Если вы публикуете личные данные или фотографии других людей:

  • Храните согласия на публикацию и обработку изображений.
  • Доступ к галерее ограничивайте на уровне ролей и альбомов.
  • При необходимости предоставьте пользователям способ удалить их данные.

Piwigo позволяет управлять правами доступа и скрывать метаданные EXIF при экспорте.

Проверочные тесты и критерии приёмки

  • Тест 1: Установка завершилась без ошибок, админ входит — пройдён.
  • Тест 2: Загрузка 10 фотографий разного размера, генерация превью — пройдён.
  • Тест 3: Восстановление базы и файлов из бэкапа на тестовой машине — пройдён.

Ментальные модели и эвристики

  • Разделяйте оригиналы и превью: оригиналы на медиа-носителе, а превью в кеше — это ускорит показ.
  • Малые шаги: внедряйте бэкап → тест восстановления → мониторинг до того, как начнёте массовую загрузку.
  • Принцип наименьших прав: давать пользователям минимум нужных разрешений.

Короткое объявление для соцсетей (100–200 слов)

Разворачиваете личную фотогалерею без сторонних сервисов? Piwigo на Raspberry Pi — отличное сочетание: вы храните все снимки у себя, управляете доступом и используете мобильные приложения для быстрого добавления фото. В статье — пошаговая установка, настройка Apache и MariaDB, включение HTTPS, рекомендации по безопасности и резервному копированию. Подходит как для семейных архивов, так и для небольших портфолио.

Короткая сводка и дальнейшие шаги

Piwigo на Raspberry Pi — практичное решение для тех, кто ценит контроль над фотоархивом. Начните с базовой установки, настройте TLS и бэкапы, затем постепенно настраивайте права и темы. Если нужно масштабировать — переносите медиа на NAS и укрепляйте сервер.

Итоги:

  • Piwigo даёт гибкий и открытый путь к self-hosted фотогалерее.
  • Важно следить за безопасностью, правами и бэкапами.
  • Мобильные приложения делают загрузку удобной.

Если хотите, могу подготовить готовый checklist в формате файла (CSV/Markdown) для развертывания Piwigo шаг за шагом.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Скриншот в инкогнито на Android
Android браузеры

Скриншот в инкогнито на Android

Микрофон не работает на Android — как быстро исправить
Мобильные устройства

Микрофон не работает на Android — как быстро исправить

Как устанавливать моды в Minecraft — полный гид
Игры

Как устанавливать моды в Minecraft — полный гид

Как сделать групповой заказ в Uber Eats
Доставка еды

Как сделать групповой заказ в Uber Eats

Липкий хедер на CSS: простое руководство
Веб-разработка

Липкий хедер на CSS: простое руководство

Скриншоты Apple TV с Mac
Руководство

Скриншоты Apple TV с Mac