Docker: Update ARMv7 docs and include dedicated make targets for ARM64

This commit is contained in:
Michael Mayer 2022-02-13 16:25:59 +01:00
parent ec8b0fd212
commit e88b4c1809
4 changed files with 33 additions and 8 deletions

View File

@ -210,6 +210,10 @@ docker-preview:
scripts/docker/multiarch.sh photoprism linux/amd64,linux/arm64
docker-release:
scripts/docker/multiarch.sh photoprism linux/amd64,linux/arm64 $(DOCKER_TAG)
docker-arm64-preview:
scripts/docker/arch.sh photoprism linux/arm64 arm64-preview
docker-arm64-release:
scripts/docker/arch.sh photoprism linux/arm64 arm64
docker-armv7-develop:
docker pull --platform=arm ubuntu:21.10
scripts/docker/arch.sh develop linux/arm armv7 /armv7

View File

@ -7,7 +7,8 @@ version: '3.5'
# An "exec format" error will occur otherwise.
# - Try explicitly pulling the ARM64 version if you've booted your device with the "arm_64bit=1" flag and you see
# the "no matching manifest" error on Raspberry Pi OS (Raspbian). See documentation for details.
# - Use https://dl.photoprism.app/docker/armv7/docker-compose.yml for running PhotoPrism on ARMv7-based (32-bit) devices.
# - Use https://dl.photoprism.app/docker/armv7/docker-compose.yml to run PhotoPrism and MariaDB on ARMv7-based devices
# as well as Raspberry Pi OS (Raspbian) installations without 64-bit support.
# - Running PhotoPrism on a server with less than 4 GB of swap space or setting a memory/swap limit can cause unexpected
# restarts ("crashes"), 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:

View File

@ -1,19 +1,26 @@
# Running PhotoPrism on ARMv7-based devices (32-bit)
You have to resort to alternative Docker images to run PhotoPrism and MariaDB on ARMv7-based devices
and those with a 32-bit operating system:
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:
PhotoPrism: photoprism/photoprism:armv7
MariaDB : linuxserver/mariadb:latest
Stable Release : photoprism/photoprism:armv7
Development Preview: photoprism/photoprism:armv7-preview
MariaDB : linuxserver/mariadb:latest
Darktable is not included in the ARMv7 version because it is not 32-bit compatible.
Pay close attention to changed directory and environment variable names.
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

View File

@ -37,7 +37,7 @@ elif [[ $3 =~ $NUMERIC ]]; then
-t photoprism/$1:latest \
-t photoprism/$1:$3 \
--push .
else
elif [[ $4 ]]; then
echo "Building 'photoprism/$1:$3' in docker/${1/-//}$4/Dockerfile..."
DOCKER_TAG=$(date -u +%Y%m%d)
docker buildx build \
@ -50,6 +50,19 @@ else
-f docker/${1/-//}$4/Dockerfile \
-t photoprism/$1:$3 \
--push .
else
echo "Building 'photoprism/$1:$3' in docker/${1/-//}/Dockerfile..."
DOCKER_TAG=$(date -u +%Y%m%d)
docker buildx build \
--platform $2 \
--pull \
--no-cache \
--build-arg BUILD_TAG=$DOCKER_TAG \
--build-arg GOPROXY \
--build-arg GODEBUG \
-f docker/${1/-//}/Dockerfile \
-t photoprism/$1:$3 \
--push .
fi
echo "Done"