Use docker save/load for cross-build deploy from M1 to NAS
Deploy Dashboard / deploy (push) Failing after 2m7s

This commit is contained in:
Gan, Jimmy
2026-02-21 11:05:00 +08:00
parent 1e3bd71bfb
commit d3ccca52f0
3 changed files with 12 additions and 10 deletions
+6 -7
View File
@@ -1,19 +1,18 @@
#!/bin/bash
set -e
REGISTRY="100.78.131.124:3300"
IMAGE="$REGISTRY/jimmy/nas-dashboard"
IMAGE="nas-dashboard"
TAG="${1:-latest}"
DIR="$(cd "$(dirname "$0")" && pwd)"
NAS="zjgump@100.78.131.124"
echo "Building linux/amd64 image..."
docker buildx build --platform linux/amd64 -t "$IMAGE:$TAG" -t "$IMAGE:latest" "$DIR"
docker buildx build --platform linux/amd64 -t "$IMAGE:$TAG" --load "$DIR"
echo "Pushing to registry..."
docker push "$IMAGE:$TAG"
[ "$TAG" != "latest" ] && docker push "$IMAGE:latest"
echo "Transferring to NAS..."
docker save "$IMAGE:$TAG" | ssh "$NAS" "export PATH=/usr/local/bin:\$PATH && docker load"
echo "Deploying on NAS..."
ssh zjgump@100.78.131.124 "cd /volume1/docker/nas-dashboard && docker compose pull && docker compose up -d"
ssh "$NAS" "export PATH=/usr/local/bin:\$PATH && cd /volume1/docker/nas-dashboard && docker compose up -d"
echo "Done."
+1 -1
View File
@@ -20,7 +20,7 @@ services:
dashboard:
# build: .
image: 100.78.131.124:3300/jimmy/nas-dashboard:latest
image: nas-dashboard:latest
container_name: nas-dashboard
restart: unless-stopped
ports: