PhotoStructure on Raspberry Pi
The Raspberry Pi is a power-efficient single-board computer. Both the Pi 4 and Pi 5 can serve the web-based UI and import your library at the same time. The Pi 4 runs 4โ10ร slower than a modern laptop or desktop; the Pi 5 is fast enough that most libraries import without much pain.
PhotoStructure requires at least 2GB of RAM on a Raspberry Pi.
If you have a large library (50,000+ images) and a faster computer available, consider doing your initial import there and then moving the library to your Pi. Moving PhotoStructure to a new computer explains how.
๐ฅง PhotoStructure tries to be nice to your Pi
PhotoStructure detects that you’re running on a Raspberry Pi and automatically disables its more expensive features to help imports go 10ร faster. It also extends timeout settings to match the slower processing times on Pi hardware.
These disabled features are a compromise:
- invalid JPEG, Raw, and video files may be imported into your library, as they won’t be validated for bitrot
- browsing will require more network bandwidth due to larger, less-optimally-encoded preview images
- preview images will look a bit blurry, as they haven’t been sharpened after reduction
- non-mp4-encoded videos will not be viewable, as they haven’t been transcoded
- images missing metadata won’t be repaired by inference from sibling files
If you’re patient and don’t mind slow imports, set PS_QUICK_SYNC_MODE=false to
keep these features enabled.
Features disabled by PS_QUICK_SYNC_MODE:
validateJpegImagesvalidateRawImagesvalidateVideostranscodeVideospreviewMinimizedpreviewProgressivepreviewSharpeninferenceSiblingRadius(set to0)
Read more about advanced settings here.
Install!
PhotoStructure’s Docker images include native linux/arm64 builds. Use the
Docker Compose Wizard to generate a
compose.yaml, then follow the
Docker reference for bind mounts,
permissions, and networking.
The Node edition also runs on arm64 if you prefer to manage your own Node.js runtime.

