## Summary - Migrate all ArgoCD app repo URLs from `indri.tail8d86e.ts.net:2200` to `forge.ops.eblu.me:2222` - Add Immich self-hosted photo management service with: - Helm chart deployment via ArgoCD - PostgreSQL cluster with pgvecto.rs for AI vector search (immich-pg) - NFS storage on sifaka for photo library (2Ti) - Tailscale Ingress + Caddy proxy for `photos.ops.eblu.me` - Machine learning service for face/object recognition ## Deployment and Testing - [x] Update ArgoCD repo-creds-forge secret with new URL (one-time manual step) - [ ] Sync `apps` to pick up new applications - [ ] Sync all existing apps to verify new forge URL works - [ ] Sync `blumeops-pg` to deploy immich-pg cluster - [ ] Wait for immich-pg to be healthy - [ ] Create immich-db secret from auto-generated password - [ ] Sync `immich-storage` (PV, PVC, Ingress) - [ ] Sync `immich` (Helm chart) - [ ] Run `mise run provision-indri -- --tags caddy` to add photos.ops.eblu.me - [ ] Verify Immich UI is accessible 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/62
38 lines
1.3 KiB
YAML
38 lines
1.3 KiB
YAML
# Immich - Self-hosted photo and video management
|
|
# High-performance Google Photos/iCloud alternative with AI features
|
|
#
|
|
# Chart mirrored from https://github.com/immich-app/immich-charts to forge
|
|
#
|
|
# Prerequisites:
|
|
# 1. Mirror immich-charts to forge: https://github.com/immich-app/immich-charts
|
|
# 2. Create immich namespace and secrets:
|
|
# kubectl create namespace immich
|
|
# op inject -i argocd/manifests/immich/secret-db.yaml.tpl | kubectl apply -f -
|
|
# 3. Create immich-pg database and user (see immich-pg app)
|
|
# 4. Mount photos directory from indri to minikube
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: immich
|
|
namespace: argocd
|
|
spec:
|
|
project: default
|
|
sources:
|
|
# Helm chart from forge mirror (SSH via egress)
|
|
- repoURL: ssh://forgejo@forge.ops.eblu.me:2222/eblume/immich-charts.git
|
|
targetRevision: immich-0.10.3
|
|
path: charts/immich
|
|
helm:
|
|
releaseName: immich
|
|
valueFiles:
|
|
- $values/argocd/manifests/immich/values.yaml
|
|
# Values from our git repo (use feature branch for testing, reset to main after merge)
|
|
- repoURL: ssh://forgejo@forge.ops.eblu.me:2222/eblume/blumeops.git
|
|
targetRevision: feature/immich
|
|
ref: values
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: immich
|
|
syncPolicy:
|
|
syncOptions:
|
|
- CreateNamespace=true
|