3
0
forked from jakub/ansible

update immich

This commit is contained in:
martin.fencl
2025-12-10 10:41:42 +01:00
parent 9140c6e2c9
commit d94f999f7b

View File

@@ -20,7 +20,14 @@
# --- Immich specifics ---
immich_project: "immich"
immich_compose_file: "/opt/immich/docker-compose.yml"
# Where compose file lives on the VM
immich_compose_dir: "/opt/immich"
immich_compose_file: "{{ immich_compose_dir }}/docker-compose.yml"
# Official Immich compose URL (latest release)
immich_compose_url: "https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml"
immich_port: 2283
# Optional external URL for controller-side readiness check
@@ -34,8 +41,26 @@
docker_prefix: "unalias docker 2>/dev/null || true; DOCKER_CLI_HINTS=0; command docker"
# Commands to run on the target VM (quiet outputs)
# Uses the version in docker-compose.yml (.env -> IMMICH_VERSION or default "release")
# 1) Ensure compose dir exists
# 2) Safely download latest docker-compose.yml from GitHub (with backup)
# 3) Pull images according to compose
# 4) Start / update stack
immich_commands:
- "mkdir -p {{ immich_compose_dir }}"
- >-
cd {{ immich_compose_dir }} &&
wget -qO docker-compose.yml.new "{{ immich_compose_url }}" || true;
if [ -s docker-compose.yml.new ]; then
echo 'Downloaded new docker-compose.yml from GitHub (Immich latest).';
if [ -f docker-compose.yml ]; then
cp docker-compose.yml "docker-compose.yml.bak-$(date +%F_%H-%M-%S)";
echo 'Existing docker-compose.yml backed up.';
fi;
mv docker-compose.yml.new docker-compose.yml;
else
echo 'WARNING: Failed to download a valid docker-compose.yml, keeping existing one.' >&2;
rm -f docker-compose.yml.new 2>/dev/null || true;
fi
- "{{ docker_prefix }} compose -p {{ immich_project }} -f {{ immich_compose_file }} pull >/dev/null"
- "{{ docker_prefix }} compose -p {{ immich_project }} -f {{ immich_compose_file }} up -d --remove-orphans >/dev/null"