photoprism/docker/examples/armv7/README

80 lines
3.6 KiB
Plaintext

# Running PhotoPrism on ARMv7-based devices (32-bit)
You may use the following 32-bit Docker images to run PhotoPrism and MariaDB on ARMv7-based devices
as well as Raspberry Pi OS (Raspbian) installations without 64-bit support:
Stable Release : photoprism/photoprism:armv7
Development Preview: photoprism/photoprism:armv7-preview
MariaDB : linuxserver/mariadb:latest
Docker Hub URL:
https://hub.docker.com/r/photoprism/photoprism/tags?page=1&name=armv7
Note that Darktable is not included in the ARMv7 image because it is not 32-bit compatible.
Always choose the regular 64-bit version if your device supports it.
If your device meets the system requirements, mostly the same installation instructions as for regular Linux
servers apply:
https://docs.photoprism.app/getting-started/docker-compose/
Please pay close attention to changed directory and environment variable names!
### System Requirements ###
- Your device should have at least 3 GB of physical memory. While PhotoPrism has been reported to work on devices with
less memory, we take no responsibility for instability or performance issues. RAW image conversion and TensorFlow are
disabled on systems with 1 GB or less memory.
- If less than 4 GB of swap space is configured or a manual memory/swap limit is set, this can cause unexpected restarts,
for example, when the indexer temporarily needs more memory to process large files.
- If you see Docker errors related to "cgroups", it may help to add the following to `/boot/firmware/cmdline.txt`:
```
cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1
```
- We recommend disabling Linux kernel security in your `docker-compose.yml`, especially if you do not have experience
with the configuration:
```yaml
photoprism:
security_opt:
- seccomp:unconfined
- apparmor:unconfined
```
- If you install PhotoPrism on a public server outside your home network, please always run it behind a secure
HTTPS reverse proxy such as Traefik or Caddy. Your files and passwords will otherwise be transmitted in
clear text and can be intercepted by anyone, including your provider, hackers, and governments:
https://docs.photoprism.app/getting-started/proxies/traefik/
!!! Note
Indexing large photo and video collections significantly benefits from fast, local SSD storage,
and plenty of memory for caching. Especially the conversion of RAW images and the transcoding of
videos are very demanding.
### Troubleshooting ###
If your server runs out of memory, the index is frequently locked, or other system resources are running low:
- Try reducing the number of workers by setting PHOTOPRISM_WORKERS to a reasonably small value in docker-compose.yml,
depending on the performance of your device or cloud server:
https://docs.photoprism.app/getting-started/config-options/
- If you are using SQLite, switch to MariaDB, which is better optimized for high concurrency
- As a last measure, you can disable the use of TensorFlow for image classification and facial recognition
Other issues? Our troubleshooting checklists help you quickly diagnose and solve them:
https://docs.photoprism.app/getting-started/troubleshooting/
### Getting Updates ###
If an old version is running on your device and is not updated, you may need to explicitly
pull the latest image from [Docker Hub](https://hub.docker.com/r/photoprism/photoprism).
Note that the `:latest` image tag does not cause Docker to automatically download new images.
### Credits ###
A big thank you to [Guy Sheffer](https://github.com/guysoft) for helping us [build](https://github.com/photoprism/photoprism/issues/109)
a Raspberry Pi version!