From df01e517a8cb8a9f11a0aee653e8a079cc6fd0c7 Mon Sep 17 00:00:00 2001 From: Josua Mayer Date: Wed, 3 Sep 2025 15:20:11 +0200 Subject: [PATCH] Add armv7 support to docker builds Update package.json and Dockerfile to support the armv7 platform. Similar to arm64 it is supported by docker's buildkit and uses an architecture-specific nusqlite3 binary. --- Dockerfile | 2 ++ package.json | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 1d9f3f9e6..52447c615 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,6 +33,8 @@ RUN case "$TARGETPLATFORM" in \ curl -L -o /tmp/library.zip "https://github.com/mikiher/nunicode-sqlite/releases/download/v1.2/libnusqlite3-linux-musl-x64.zip" ;; \ "linux/arm64") \ curl -L -o /tmp/library.zip "https://github.com/mikiher/nunicode-sqlite/releases/download/v1.2/libnusqlite3-linux-musl-arm64.zip" ;; \ + "linux/arm/v7") \ + curl -L -o /tmp/library.zip "https://github.com/mikiher/nunicode-sqlite/releases/download/v1.2/libnusqlite3-linux-musl-armv7l.zip" ;; \ *) echo "Unsupported platform: $TARGETPLATFORM" && exit 1 ;; \ esac && \ unzip /tmp/library.zip -d $NUSQLITE3_DIR && \ diff --git a/package.json b/package.json index 34abc60ef..271a703e6 100644 --- a/package.json +++ b/package.json @@ -12,9 +12,10 @@ "prod": "npm run client && npm ci && node index.js", "build-win": "npm run client && pkg -t node20-win-x64 -o ./dist/win/audiobookshelf -C GZip .", "build-linux": "build/linuxpackager", - "docker": "docker buildx build --platform linux/amd64,linux/arm64 --push . -t advplyr/audiobookshelf", + "docker": "docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 --push . -t advplyr/audiobookshelf", "docker-amd64-local": "docker buildx build --platform linux/amd64 --load . -t advplyr/audiobookshelf-amd64-local", "docker-arm64-local": "docker buildx build --platform linux/arm64 --load . -t advplyr/audiobookshelf-arm64-local", + "docker-armv7-local": "docker buildx build --platform linux/arm/v7 --load . -t advplyr/audiobookshelf-arm64-local", "deploy-linux": "node deploy/linux", "test": "mocha", "coverage": "nyc mocha"