Docker: Update ARMv7 and ARM64 README files

This commit is contained in:
Michael Mayer 2022-03-02 16:07:24 +01:00
parent a6436b5988
commit 754e11a9af
2 changed files with 70 additions and 63 deletions

View file

@ -1,7 +1,7 @@
>> Running PhotoPrism on ARM64-based devices (64-bit) << >> Running PhotoPrism on ARM64-based devices (64-bit) <<
Our stable version and development preview have been built into a single multi-arch Docker Our stable version and development preview have been built into a single multi-arch
image for 64-bit AMD, Intel, and ARM processors (Apple Silicon, Raspberry Pi 4): Docker image for 64-bit AMD, Intel, and ARM processors (Apple Silicon, Raspberry Pi 4):
Stable Release : photoprism/photoprism:latest Stable Release : photoprism/photoprism:latest
Development Preview: photoprism/photoprism:preview Development Preview: photoprism/photoprism:preview
@ -18,56 +18,62 @@ as for regular Linux servers apply:
https://docs.photoprism.app/getting-started/docker-compose/ https://docs.photoprism.app/getting-started/docker-compose/
Existing users are advised to check their "docker-compose.yml" against our examples at Existing users are advised to check their "docker-compose.yml" against our examples
<dl.photoprism.app/docker> from time to time in case there are new configuration options at <dl.photoprism.app/docker> from time to time in case there are new configuration
or other improvements. Update instructions can be found at the bottom of this README file. options or other improvements. Update instructions can be found at the bottom of
this README file.
Note that Raspberry Pi OS (Raspbian) is a 32-bit user-space Linux with a 64-bit kernel to Note that Raspberry Pi OS (Raspbian) is a 32-bit user-space Linux with a 64-bit
remain compatible with older Raspberry software. This requires special configuration to run kernel to remain compatible with older Raspberry software. This requires special
modern 64-bit applications and Docker images (see below). configuration to run modern 64-bit applications and Docker images (see below).
If you do not have legacy software, we recommend choosing a standard 64-bit Linux distribution If you do not have legacy software, we recommend choosing a standard 64-bit Linux
as it requires less experience: distribution as it requires less experience:
- Raspberry Pi Debian: https://raspi.debian.net/ > Raspberry Pi Debian: https://raspi.debian.net/
- Ubuntu for Raspberry Pi: https://ubuntu.com/raspberry-pi > Ubuntu for Raspberry Pi: https://ubuntu.com/raspberry-pi
- UbuntuDockerPi: https://github.com/guysoft/UbuntuDockerPi (Ubuntu incl. Docker pre-configured) > UbuntuDockerPi: https://github.com/guysoft/UbuntuDockerPi (Ubuntu incl. Docker pre-configured)
Other distributions that target the same use case as Raspbian, such as CoreELEC, may have Other distributions that target the same use case as Raspbian, such as CoreELEC,
the same problems and should also not be used to run modern server applications. may have the same problems and should also not be used to run modern server
applications.
### Raspberry Pi OS ### ### Raspberry Pi OS ###
To ensure compatibility with 64-bit Docker images, your Raspberry Pi 3 / 4 must boot with To ensure compatibility with 64-bit Docker images, your Raspberry Pi 3 / 4 must
the "arm_64bit=1" flag in its "config.txt" file: boot with the "arm_64bit=1" flag in its "config.txt" file:
https://www.raspberrypi.org/documentation/installation/installing-images/README.md https://www.raspberrypi.org/documentation/installation/installing-images/README.md
An "exec format" error will occur otherwise. An "exec format" error will occur otherwise.
Try explicitly pulling the ARM64 version if you've booted your device with the "arm_64bit=1" Try explicitly pulling the ARM64 version if you've booted your device with the
flag and you see the "no matching manifest" error on Raspberry Pi OS (Raspbian): "arm_64bit=1" flag and you see the "no matching manifest" error on
Raspberry Pi OS (Raspbian):
docker pull --platform=arm64 photoprism/photoprism:latest docker pull --platform=arm64 photoprism/photoprism:latest
It may also help to set the DOCKER_DEFAULT_PLATFORM environment variable to "linux/arm64". It may also help to set the DOCKER_DEFAULT_PLATFORM environment variable to
"linux/arm64".
### System Requirements ### ### System Requirements ###
- Your device should have at least 3 GB of physical memory and a 64-bit operating system - Your device should have at least 3 GB of physical memory and a 64-bit
- While PhotoPrism has been reported to work on devices with less memory, we take no operating system
responsibility for instability or performance problems - While PhotoPrism has been reported to work on devices with less memory,
- RAW image conversion and TensorFlow are disabled on systems with 1 GB or less memory we take no responsibility for instability or performance problems
- Indexing large photo and video collections significantly benefits from local SSD storage - RAW image conversion and TensorFlow are disabled on systems with 1 GB
and plenty of memory for caching, especially the conversion of RAW images and the transcoding or less memory
of videos are very demanding - Indexing large photo and video collections significantly benefits from
- If less than 4 GB of swap space is configured or a manual memory/swap limit is set, this can local SSD storage and plenty of memory for caching, especially the conversion
cause unexpected restarts, for example, when the indexer temporarily needs more memory to of RAW images and the transcoding of videos are very demanding
process large files - If less than 4 GB of swap space is configured or a manual memory/swap limit
- High-resolution panoramic images may require additional swap space and/or physical memory is set, this can cause unexpected restarts, for example, when the indexer
above the recommended minimum temporarily needs more memory to process large files
- We recommend disabling kernel security in your docker-compose.yml, especially if you do not - High-resolution panoramic images may require additional swap space and/or
have experience with the configuration: physical memory above the recommended minimum
- We recommend disabling kernel security in your docker-compose.yml, especially
if you do not have experience with the configuration:
``` ```
photoprism: photoprism:
security_opt: security_opt:

View file

@ -1,19 +1,18 @@
>> Running PhotoPrism on ARMv7-based devices (32-bit) << >> Running PhotoPrism on ARMv7-based devices (32-bit) <<
You may use the following 32-bit Docker images to run PhotoPrism and MariaDB You may use the following 32-bit Docker images to run PhotoPrism and MariaDB
on ARMv7-based devices: on ARMv7-based devices:
Stable Release : photoprism/photoprism:armv7 Stable Release : photoprism/photoprism:armv7
Development Preview: photoprism/photoprism:preview-armv7 Development Preview: photoprism/photoprism:preview-armv7
MariaDB : linuxserver/mariadb:latest MariaDB : linuxserver/mariadb:latest
Docker Hub URL: Docker Hub URL:
https://hub.docker.com/r/photoprism/photoprism/tags?page=1&name=armv7 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 Note that Darktable is not included in the ARMv7 image because it is not 32-bit
32-bit compatible. Always choose the regular 64-bit version if your device compatible. Always choose the regular 64-bit version if your device supports it.
supports it.
If your device meets the system requirements, mostly the same installation If your device meets the system requirements, mostly the same installation
instructions as for regular Linux servers apply: instructions as for regular Linux servers apply:
@ -22,10 +21,10 @@ instructions as for regular Linux servers apply:
Please pay close attention to changed directory and environment variable names! Please pay close attention to changed directory and environment variable names!
Existing users are advised to check their "docker-compose.yml" against our Existing users are advised to check their "docker-compose.yml" against our examples
examples at <dl.photoprism.app/docker> from time to time in case there are new at <dl.photoprism.app/docker> from time to time in case there are new configuration
configuration options or other improvements. Update instructions can be found at options or other improvements. Update instructions can be found at the bottom of
the bottom of this README file. this README file.
### System Requirements ### ### System Requirements ###
@ -33,25 +32,26 @@ the bottom of this README file.
system (always use our ARM64 image if possible) system (always use our ARM64 image if possible)
- While PhotoPrism has been reported to work on devices with less memory, we take - While PhotoPrism has been reported to work on devices with less memory, we take
no responsibility for instability or performance problems no responsibility for instability or performance problems
- RAW image conversion and TensorFlow are disabled on systems with 1 GB or less memory - RAW image conversion and TensorFlow are disabled on systems with 1 GB or
less memory
- Indexing large photo and video collections significantly benefits from local SSD - Indexing large photo and video collections significantly benefits from local SSD
storage and plenty of memory for caching, especially the conversion of RAW images storage and plenty of memory for caching, especially the conversion of RAW
and the transcoding of videos are very demanding images and the transcoding of videos are very demanding
- If less than 4 GB of swap space is configured or a manual memory/swap limit is set, - If less than 4 GB of swap space is configured or a manual memory/swap limit is
this can cause unexpected restarts, for example, when the indexer temporarily needs set, this can cause unexpected restarts, for example, when the indexer
more memory to process large files temporarily needs more memory to process large files
- High-resolution panoramic images may require additional swap space and/or physical - High-resolution panoramic images may require additional swap space and/or
memory above the recommended minimum physical memory above the recommended minimum
- We recommend disabling kernel security in your docker-compose.yml, especially if you - We recommend disabling kernel security in your docker-compose.yml, especially
do not have experience with the configuration: if you do not have experience with the configuration:
``` ```
photoprism: photoprism:
security_opt: security_opt:
- seccomp:unconfined - seccomp:unconfined
- apparmor:unconfined - apparmor:unconfined
``` ```
- If you install PhotoPrism on a public server outside your home network, always run - If you install PhotoPrism on a public server outside your home network, always
it behind a secure HTTPS reverse proxy such as Traefik or Caddy: run it behind a secure HTTPS reverse proxy such as Traefik or Caddy:
https://docs.photoprism.app/getting-started/proxies/traefik/ https://docs.photoprism.app/getting-started/proxies/traefik/
### Troubleshooting ### ### Troubleshooting ###
@ -68,10 +68,11 @@ system resources are running low:
- If you are using SQLite, switch to MariaDB, which is better optimized for - If you are using SQLite, switch to MariaDB, which is better optimized for
high concurrency high concurrency
- As a last measure, you can disable the use of TensorFlow for image classification - As a last measure, you can disable the use of TensorFlow for image
and facial recognition classification and facial recognition
Other issues? Our troubleshooting checklists help you quickly diagnose and solve them: Other issues? Our troubleshooting checklists help you quickly diagnose and
solve them:
https://docs.photoprism.app/getting-started/troubleshooting/ https://docs.photoprism.app/getting-started/troubleshooting/
@ -88,8 +89,8 @@ from Docker Hub and restart your instance in the background:
Pulling a new version can take several minutes, depending on your internet Pulling a new version can take several minutes, depending on your internet
connection speed. connection speed.
Note that running an image with ":latest" tag does not cause Docker to automatically Note that running an image with ":latest" tag does not cause Docker to
download new images. automatically download new images.
### Credits ### ### Credits ###