Files
ImUpper/docker-compose.yml
2025-12-01 14:50:25 +01:00

79 lines
2.4 KiB
YAML

services:
photosync-mover:
image: alpine:3.19
container_name: photosync-mover
restart: unless-stopped
environment:
- TZ=${TZ:-UTC}
- INBOX=/inbox
- DROP=/drop
- STABLE_FOR=${STABLE_FOR:-5}
- SCAN_FALLBACK=${SCAN_FALLBACK:-60}
- PUID=${PUID:-1000}
- PGID=${PGID:-1000}
volumes:
- ${INBOX}:/inbox:rw
- ${DROP}:/drop:rw
- ./move_stable.sh:/scripts/move_stable.sh:ro
networks:
- npm-network
entrypoint:
- /bin/sh
- -c
- |
set -e
apk add --no-cache inotify-tools coreutils su-exec >/dev/null
exec su-exec "$${PUID}:$${PGID}" /scripts/move_stable.sh
photosync-uploader:
image: alpine:3.19
container_name: photosync-uploader
restart: unless-stopped
depends_on:
- photosync-mover
environment:
- TZ=${TZ:-UTC}
- IMMICH_URL=${IMMICH_URL}
- IMMICH_API_KEY=${IMMICH_API_KEY}
- IMMICH_GO_VERSION=${IMMICH_GO_VERSION:-0.31.0}
- SCAN_DIR=/drop
- SCAN_INTERVAL=${UPLOAD_SCAN_INTERVAL:-5}
- CONCURRENCY=${UPLOAD_CONCURRENCY:-4}
- IDLE_SLEEP=${UPLOAD_IDLE_SLEEP:-3}
- DELETE_ON_SUCCESS=${DELETE_ON_SUCCESS:-true}
- ALLOW_INSECURE_SSL=${ALLOW_INSECURE_SSL:-false}
- PUID=${PUID:-1000}
- PGID=${PGID:-1000}
- XDG_CACHE_HOME=/tmp/immich-cache
- HOME=/tmp
volumes:
- ${DROP}:/drop:rw
- ./uploader.sh:/scripts/uploader.sh:ro
entrypoint:
- /bin/sh
- -c
- |
set -e
apk add --no-cache curl ca-certificates su-exec tar >/dev/null
arch="$$(uname -m)"
case "$$arch" in
x86_64) arch="x86_64" ;;
aarch64) arch="arm64" ;;
arm64) arch="arm64" ;;
*) echo "Unsupported architecture: $$arch"; exit 1 ;;
esac
url="https://github.com/simulot/immich-go/releases/download/v$${IMMICH_GO_VERSION}/immich-go_Linux_$${arch}.tar.gz"
echo "[uploader] Downloading immich-go $${IMMICH_GO_VERSION} for $$arch"
tmp="$$(mktemp -d)"
curl -fsSL "$$url" -o "$$tmp/immich-go.tar.gz"
tar -xzf "$$tmp/immich-go.tar.gz" -C "$$tmp"
install -m 0755 "$$tmp/immich-go" /usr/local/bin/immich-go
rm -rf "$$tmp"
exec su-exec "$${PUID}:$${PGID}" /scripts/uploader.sh
networks:
- npm-network
networks:
npm-network:
external: true