2021-12-10 15:39:16 +01:00
|
|
|
# Running PhotoPrism on a Raspberry Pi 3 / 4 or other ARM64-based devices (64-bit)
|
2021-12-08 11:01:58 +01:00
|
|
|
|
2021-12-10 15:39:16 +01:00
|
|
|
Our stable version and development preview now come as a single multi-arch image for AMD64 and ARM64:
|
2021-12-08 11:01:58 +01:00
|
|
|
|
|
|
|
https://hub.docker.com/r/photoprism/photoprism
|
|
|
|
|
|
|
|
If your device meets the system requirements, mostly the same installation instructions as for regular Linux
|
|
|
|
servers apply:
|
|
|
|
|
|
|
|
https://docs.photoprism.org/getting-started/docker-compose/
|
|
|
|
|
2021-12-10 15:39:16 +01:00
|
|
|
Use `photoprism/photoprism:latest` for the stable release or `photoprism/photoprism:preview` for testing
|
|
|
|
preview builds. Make sure to explicitly pull the most recent image from Docker Hub. Existing users are advised to
|
|
|
|
update their `docker-compose.yml` config based on our example:
|
2021-12-08 11:01:58 +01:00
|
|
|
|
2021-12-10 15:39:16 +01:00
|
|
|
https://dl.photoprism.org/docker/arm64/docker-compose.yml
|
|
|
|
|
|
|
|
To ensure compatibility with 64-bit Docker images, you have to boot your Pi with
|
|
|
|
the "arm_64bit=1" flag in its "config.txt":
|
|
|
|
|
|
|
|
https://www.raspberrypi.org/documentation/installation/installing-images/README.md
|
|
|
|
|
|
|
|
An "exec format error" will occur otherwise.
|
|
|
|
|
|
|
|
Alternatively, you can install UbuntuDockerPi - it's a 64-bit Ubuntu with Docker pre-configured:
|
|
|
|
|
|
|
|
https://github.com/guysoft/UbuntuDockerPi
|
2021-12-08 11:01:58 +01:00
|
|
|
|
|
|
|
### System Requirements ###
|
|
|
|
|
|
|
|
- Your device should have at least 4 GB of memory. Running PhotoPrism on a server with less than 4 GB of swap space
|
|
|
|
or setting a memory/swap limit can cause unexpected restarts, especially 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
|
|
|
|
```
|
2021-12-08 11:09:22 +01:00
|
|
|
- We recommend disabling Linux kernel security in your `docker-compose.yml`, especially if you do not have experience
|
|
|
|
with the configuration:
|
2021-12-08 11:01:58 +01:00
|
|
|
```yaml
|
2021-01-02 14:06:34 +01:00
|
|
|
photoprism:
|
|
|
|
security_opt:
|
|
|
|
- seccomp:unconfined
|
|
|
|
- apparmor:unconfined
|
2021-12-08 11:01:58 +01:00
|
|
|
```
|
|
|
|
- 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, Caddy, or NGINX. Your files and passwords will otherwise be transmitted in
|
|
|
|
clear text and can be intercepted by anyone, including your provider, hackers, and governments.
|
|
|
|
|
|
|
|
!!! 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.
|
|
|
|
|
|
|
|
!!! Reducing System Load
|
|
|
|
If you're running out of memory - or other system resources - while indexing, try reducing the
|
|
|
|
[number of workers](https://docs.photoprism.org/getting-started/config-options/) by setting
|
|
|
|
`PHOTOPRISM_WORKERS` to a reasonably small value in `docker-compose.yml` (depending on the performance of the server).
|
|
|
|
As a measure of last resort, you may disable using TensorFlow for image classification and facial recognition.
|
|
|
|
|
|
|
|
Big thank you to [Guy Sheffer](https://github.com/guysoft)
|
|
|
|
for [building](https://github.com/photoprism/photoprism/issues/109) this!
|