[IMMICH] Deploy Immich v3 photo server (Google Photos replacement)
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/push/woodpecker Pipeline was successful
- Compose stack at appdata/immich, exposed via Traefik at photos.xtrm-lab.org - Library on cache NVMe (raidz1), Postgres on cache - Nightly backup (DB dump + originals rsync) to parity-protected array disk1 - Google Takeout import ready via immich-go v0.32.0
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# Other Services
|
# Other Services
|
||||||
|
|
||||||
**Last Updated:** 2026-06-29
|
**Last Updated:** 2026-07-08
|
||||||
|
|
||||||
Non-critical services that enhance functionality but don't affect core network operation.
|
Non-critical services that enhance functionality but don't affect core network operation.
|
||||||
|
|
||||||
@@ -102,6 +102,22 @@ Non-critical services that enhance functionality but don't affect core network o
|
|||||||
|
|
||||||
## Media
|
## Media
|
||||||
|
|
||||||
|
### Immich (Photos)
|
||||||
|
|
||||||
|
| Component | IP (dockerproxy) | URL |
|
||||||
|
|-----------|------------------|-----|
|
||||||
|
| immich_server | 172.18.0.132 | https://photos.xtrm-lab.org |
|
||||||
|
| immich_machine_learning | (immich_default) | - |
|
||||||
|
| immich_postgres | (immich_default) | - (vectorchord) |
|
||||||
|
| immich_redis | (immich_default) | - |
|
||||||
|
|
||||||
|
**Purpose:** Self-hosted Google Photos replacement (Immich v3)
|
||||||
|
**Stack:** docker compose at `/mnt/user/appdata/immich/` (`IMMICH_VERSION=v3`)
|
||||||
|
**Access:** Traefik → `photos.xtrm-lab.org` (wildcard cert, no forward-auth so mobile app works) + direct LAN `192.168.10.20:2283`
|
||||||
|
**Storage:** library on cache NVMe pool `/mnt/user/photos` (raidz1, redundant, fast); Postgres on cache `appdata/immich/postgres`
|
||||||
|
**Backup:** nightly 03:30 (`scripts/immich-backup.sh`, cron `dynamix/immich-backup.cron`) — pg_dumpall (keep 14) + originals rsync → `/mnt/disk1/immich-backup` (array disk1, parity-protected, independent media)
|
||||||
|
**Import:** immich-go v0.32.0 at `scripts/` for Google Takeout import (`scripts/import-google-photos.sh`)
|
||||||
|
|
||||||
### Plex
|
### Plex
|
||||||
|
|
||||||
| Network | Port | URL |
|
| Network | Port | URL |
|
||||||
|
|||||||
@@ -2,6 +2,17 @@
|
|||||||
|
|
||||||
**Purpose:** Major infrastructure events only. Minor changes are in git commit messages.
|
**Purpose:** Major infrastructure events only. Minor changes are in git commit messages.
|
||||||
|
|
||||||
|
---
|
||||||
|
## 2026-07-08
|
||||||
|
|
||||||
|
### Immich deployed (Google Photos replacement)
|
||||||
|
- **[IMMICH]** Deployed Immich v3.0.1 as a self-hosted Google Photos replacement — docker compose stack at `/mnt/user/appdata/immich/` (`IMMICH_VERSION=v3`), containers: immich_server, immich_machine_learning, immich_postgres (vectorchord), immich_redis
|
||||||
|
- **[IMMICH]** Exposed via Traefik at `https://photos.xtrm-lab.org` (wildcard cert, no forward-auth so the mobile app works) + direct LAN `192.168.10.20:2283`. No new NAT rule (goes through existing 443→Traefik)
|
||||||
|
- **[IMMICH]** Storage: primary library on cache NVMe pool `/mnt/user/photos` (raidz1, redundant, fast) — chosen over the array (single parity disk, ~900G free, slower). Postgres data on cache
|
||||||
|
- **[IMMICH]** Backup: nightly 03:30 cron (`scripts/immich-backup.sh` via `dynamix/immich-backup.cron`) — pg_dumpall (keep 14) + originals rsync → `/mnt/disk1/immich-backup` (array disk1, parity-protected, independent media)
|
||||||
|
- **[IMMICH]** Google Takeout import ready via immich-go v0.32.0 (`scripts/import-google-photos.sh`); import pending user's Takeout archive
|
||||||
|
- **[NOTE]** Dropped the stock `/etc/localtime` bind mount (host symlink `→ Europe/Sofia/` with trailing slash breaks runc); use `TZ=Europe/Kyiv` instead
|
||||||
|
|
||||||
---
|
---
|
||||||
## 2026-06-30
|
## 2026-06-30
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user