---
title: "PhotoPrism: Docker Compose і хостинг в один клік"
description: "PhotoPrism — бібліотека фото з ШІ, що сортує, позначає мітками й показує на мапі ваші фото та відео. Self-hosted альтернатива Google Photos в один клік."
---

[← Усі шаблони](https://pethost.dev/uk/templates/) · [Медіа](https://pethost.dev/uk/templates/media/)

# Задеплойте PhotoPrism в один клік

Бібліотека фото з ШІ: переглядайте, шукайте, показуйте на мапі й діліться своїми фото та відео

Альтернатива Google Photos і Apple Photos на вашій машині.

[Задеплоїти на Pethost](https://console.pethost.dev/?template=photoprism)

## Що таке PhotoPrism?

PhotoPrism — вебзастосунок для бібліотеки фото й відео. Він читає дату, камеру й місце зйомки кожного файлу, позначає мітками те, що на знімку, знаходить обличчя й групує їх за людьми, а також помічає дублікати. Бібліотеку можна відкривати через пошук, альбоми, моменти, календар, світову мапу місць, людей, мітки й папки, і вона приймає RAW-файли, відео та Live Photos. PhotoPrism встановлюється на телефон як прогресивний вебзастосунок і віддає оригінали через WebDAV, тож застосунки на кшталт PhotoSync самі завантажують фотоплівку телефона.

PhotoPrism хостять у себе, щоб фото не лежали в Google Photos та iCloud. Цей шаблон запускає безкоштовну редакцію Community з MariaDB, тримає фото й мініатюри в томах і створює адміністратора з полів ще до того, як PhotoPrism комусь відповість. Підводний камінь: інші акаунти користувачів додаються з командного рядка, бо екран керування користувачами, додаткові ролі й 3D-мапи є лише в платних членствах, а нативних застосунків для телефона немає.

## Хостинг PhotoPrism на Pethost

1. Ви входите в Pethost — з ключем доступу, через GitHub або Google. Машини ще немає? Ви обираєте тариф, і посилання чекає, доки машина не буде готова.
2. Вікно «Новий проєкт» відкривається на застосунку PhotoPrism. Ви заповнюєте те, що він просить, і натискаєте «Створити проєкт»: **Ім’я користувача**, **Пароль адміністратора**.
3. За хвилину-дві PhotoPrism працює за власною адресою з HTTPS. Секрети створюються випадково, а дані потрапляють у щонічний бекап.
4. Це проєкт як будь-який інший: ви або ваш агент можете його змінити, відкотити або відновити.

## Питання про PhotoPrism

**PhotoPrism безкоштовний?**

Так. Редакція Community має відкритий код за ліцензією AGPL-3.0 і безкоштовна. Членство Essentials, від 2 € на місяць з оплатою за рік, додає більше ролей користувачів і кращі мапи, а Plus, від 6 € на місяць, — екран керування користувачами.

**PhotoPrism чи Immich?**

Обидва — self-hosted бібліотеки фото з розпізнаванням облич і мапами. Immich має нативні застосунки, що роблять бекап телефона, а PhotoPrism — вебзастосунок, з яким телефони синхронізуються через WebDAV.

**Чи розпізнає PhotoPrism обличчя?**

Так. Під час індексації він знаходить обличчя, групує обличчя однієї людини, а щойно ви дасте групі ім’я в розділі «Люди», знаходить цю людину в решті бібліотеки.

**Як завантажити фото з телефона в PhotoPrism?**

Відкрийте його в браузері телефона й завантажте фото або синхронізуйте їх через WebDAV застосунком на кшталт PhotoSync з адресою й акаунтом, які показує кнопка «Під’єднати через WebDAV» у розділі «Налаштування → Обліковий запис».

**Як додати користувачів у PhotoPrism?**

У редакції Community — з командного рядка: виконайте в оболонці сервісу photoprism команду photoprism users add з іменем користувача, роллю й паролем. Екран керування користувачами входить до платного членства Plus.

**Скільки пам’яті й диска потрібно PhotoPrism?**

PhotoPrism у спокої займає близько 300 MB пам’яті разом із MariaDB і близько 550 MB під час імпорту; на диску лежать фото в повному розмірі плюс мініатюри. На Pethost йому вистачить тарифу Starter, і поруч залишиться місце для інших застосунків.

## PhotoPrism: файл Docker Compose

Шаблон — це цей compose.yaml і змінні, які записуються в .env проєкту під час його створення. Pethost запускає файл так, як його написано.

**Контейнери:** photoprism (photoprism/photoprism:261007), mariadb (mariadb:11.8).

**Томи, у щонічному бекапі:** originals, storage, db.

```
services:
  photoprism:
    image: photoprism/photoprism:261007
    restart: unless-stopped
    stop_grace_period: 15s
    working_dir: /photoprism
    environment:
      PHOTOPRISM_SITE_URL: ${URL}/
      # The administrator is made from these at the first start, before PhotoPrism answers anyone;
      # every page and photo asks to sign in. Later the password is changed in PhotoPrism.
      PHOTOPRISM_AUTH_MODE: password
      PHOTOPRISM_ADMIN_USER: ${ADMIN_USERNAME}
      PHOTOPRISM_ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      # The proxy serves HTTPS; requests come from it over the project's network.
      PHOTOPRISM_DISABLE_TLS: "true"
      PHOTOPRISM_DEFAULT_TLS: "false"
      PHOTOPRISM_TRUSTED_PROXY: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
      PHOTOPRISM_DATABASE_DRIVER: mysql
      PHOTOPRISM_DATABASE_SERVER: mariadb:3306
      PHOTOPRISM_DATABASE_NAME: photoprism
      PHOTOPRISM_DATABASE_USER: photoprism
      PHOTOPRISM_DATABASE_PASSWORD: ${MARIADB_PASSWORD}
      PHOTOPRISM_SIDECAR_YAML: "true"
      PHOTOPRISM_BACKUP_ALBUMS: "true"
      PHOTOPRISM_BACKUP_DATABASE: "true"
      PHOTOPRISM_BACKUP_SCHEDULE: daily
      PHOTOPRISM_UPLOAD_NSFW: "true"
    volumes:
      # The photos and videos as they were uploaded.
      - originals:/photoprism/originals
      # The index's thumbnails, sidecar files and backups.
      - storage:/photoprism/storage
    depends_on:
      mariadb:
        condition: service_healthy

  mariadb:
    image: mariadb:11.8
    restart: unless-stopped
    stop_grace_period: 15s
    command: --innodb-buffer-pool-size=256M --transaction-isolation=READ-COMMITTED --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max-connections=512 --innodb-rollback-on-timeout=OFF --innodb-lock-wait-timeout=120
    environment:
      MARIADB_AUTO_UPGRADE: "1"
      MARIADB_INITDB_SKIP_TZINFO: "1"
      MARIADB_DATABASE: photoprism
      MARIADB_USER: photoprism
      MARIADB_PASSWORD: ${MARIADB_PASSWORD}
      MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}
    volumes:
      - db:/var/lib/mysql
    healthcheck:
      test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
      interval: 5s
      timeout: 5s
      retries: 10
      start_period: 30s

volumes:
  originals:
  storage:
  db:
```

[compose.yaml](https://pethost.dev/templates/photoprism/compose.yaml)[Відкрити на GitHub](https://github.com/pethost-dev/templates/tree/main/photoprism)

## [Ще в категорії «Медіа»](https://pethost.dev/uk/templates/media/)

- [**Owncast**Відео наживо й чат на власній сторінці](https://pethost.dev/uk/templates/owncast/)
- [**Navidrome**Музичний сервер, що стрімить вашу власну колекцію](https://pethost.dev/uk/templates/navidrome/)
- [**RomM**Бібліотека й плеєр у браузері для ваших ретро-ігор](https://pethost.dev/uk/templates/romm/)
- [**Komga**Сервер і веб-читалка для ваших коміксів, манґи та електронних книжок](https://pethost.dev/uk/templates/komga/)
- [**Lychee**Фотогалерея, щоб завантажувати, упорядковувати й показувати ваші фото](https://pethost.dev/uk/templates/lychee/)
- [**Audiobookshelf**Власний сервер аудіокниг і подкастів: слухайте в браузері чи застосунках, прогрес зберігається на всіх пристроях](https://pethost.dev/uk/templates/audiobookshelf/)

Pethost · Stephan Gomer · NIP 1133096755

Pethost

- [Шаблони](https://pethost.dev/uk/templates/)
- [Про нас](https://pethost.dev/about/)
- [Документація](https://pethost.dev/docs/)
- [Блог](https://pethost.dev/uk/blog/)
- [API](https://pethost.dev/docs/api/)
- [CLI](https://pethost.dev/docs/cli/)
- [Плагін](https://github.com/pethost-dev/plugin)
- [Умови](https://pethost.dev/terms/)
- [Конфіденційність](https://pethost.dev/privacy/)
- [Повернення коштів](https://pethost.dev/refunds/)
- [support@pethost.dev](mailto:support@pethost.dev)

Бази даних

- [Postgres](https://pethost.dev/uk/postgres/)

Порівняння

- [Coolify vs Dokploy vs CapRover vs Dokku](https://pethost.dev/uk/blog/coolify-vs-dokploy-vs-caprover-vs-dokku/)
- [Coolify Cloud vs Dokploy Cloud](https://pethost.dev/uk/blog/coolify-cloud-vs-dokploy-cloud/)
- [Ціни Railway vs Render vs Fly.io](https://pethost.dev/uk/blog/railway-vs-render-vs-fly-io-pricing/)
- [Керований хостинг Docker Compose](https://pethost.dev/uk/blog/managed-docker-compose-hosting/)

Альтернативи

- [Альтернативи Railway](https://pethost.dev/uk/blog/railway-alternatives/)
- [Альтернативи Heroku](https://pethost.dev/uk/blog/heroku-alternatives/)
- [Альтернативи Dokploy](https://pethost.dev/uk/blog/dokploy-alternatives/)
- [Альтернативи Coolify](https://pethost.dev/uk/blog/coolify-alternatives/)
- [Альтернативи Render](https://pethost.dev/uk/blog/render-alternatives/)
- [Альтернативи Sliplane](https://pethost.dev/uk/blog/sliplane-alternatives/)
