Pyinfra that deploy PhotoPrism un-dockerized. Mostly to be used in LXD/C.
This repository has been archived on 2023-02-05. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Benoit S b5ae1a7207 Update path to new photoprism docker image based on Debian Bookworm 2022-05-27 22:08:59 +09:00
group_data More variables for undocker 2021-09-27 17:54:54 +09:00
inventories Use group_data inventory 2021-09-26 21:25:03 +09:00
templates Update path to new photoprism docker image based on Debian Bookworm 2022-05-27 22:08:59 +09:00
.gitignore Add .gitignore 2021-09-26 21:34:59 +09:00
LICENSE Initial commit 2021-09-26 04:59:46 +00:00
README.md Add upgrade procedure with remove/deploy 2021-09-27 21:38:10 +09:00
deploy.py Update path to new photoprism docker image based on Debian Bookworm 2022-05-27 22:08:59 +09:00
remove.py Add upgrade procedure with remove/deploy 2021-09-27 21:38:10 +09:00

README.md

photoprism

Pyinfra that deploy PhotoPrism un-dockerized on a Debian 11 LXD container.

Deployment

# lxc launch images:debian/11 <name>
# lxec exec <name> bash
# apt update && apt install python3-pip git
# pip install pyinfra
# git clone https://git.benpro.fr/benoit/photoprism.git
# cd photoprism
# ###!!!### Edit group_data/production.py
# pyinfra inventories/production.py deploy.py

Upgrade

Run remove.py then deploy.py.

# pyinfra inventories/production.py remove.py
# pyinfra inventories/production.py deploy.py

Attach a pictures volume

If required, you can mount external volumes. Example:

# lxc config device add <name> <name>_disk disk source=/dev/vdf path=/mnt/pictures readonly=true raw.mount.options=noload

Then add it to group_data/production.py:

photoprism_originals_src='/mnt/pictures'

Run photoprism command

A systemd-run wrapper is installed and you can use it via /usr/local/bin/photoprism.

# /usr/local/bin/photoprism config