night 2026-09-24: chaos rounds 1-8 evidence; 07/08/09/capability map for decisions 26-28 + digests; R-681
gates / gates (push) Successful in 24s
gates / gates (push) Successful in 24s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
13:38:05 app never answered on c-wish/ (last rc=0 code=307)
|
||||
13:38:06 wishlist: /signup http=200 type=success
|
||||
13:38:06 seeded wishlist: True
|
||||
13:38:06 navidrome: createAdmin http=200
|
||||
13:38:06 seeded navidrome: True
|
||||
13:44:09 app never answered on c-wish/ (last rc=0 code=307)
|
||||
13:44:09 wishlist: sign-in as the seeded user type=success ok=True (wrong password refused)
|
||||
13:44:10 navidrome: login as the seeded user http=200 ok=True
|
||||
13:44:18 nextcloud: readback of the seeded user found=True
|
||||
13:44:19 nextcloud files read back: 2/2 (negative control http=404)
|
||||
13:44:19 setup readback: {"wishlist": {"A": true}, "navidrome": {"A": true}, "nextcloud": {"A": true, "files": [{"felhom-seed-0-e19728.txt": true, "felhom-seed-2-8620d3.txt": true}, "404"]}}
|
||||
@@ -0,0 +1 @@
|
||||
{"round": 1, "kind": "power_cut", "at": 1790250333.5386832, "why": "20 s after the install"}
|
||||
@@ -0,0 +1 @@
|
||||
{"round": 2, "kind": "docker_restart", "at": 1790250542.5067534, "why": "20 s after the install press"}
|
||||
@@ -0,0 +1 @@
|
||||
{"round": 3, "kind": "power_cut", "at": 1790251485.0719452, "why": "at verifying"}
|
||||
@@ -0,0 +1 @@
|
||||
{"round": 4, "kind": "controller_killed", "at": 1790251757.7804189, "why": "at verifying"}
|
||||
@@ -0,0 +1 @@
|
||||
{"round": 8, "kind": "disk_to_floor_plus_1g", "at": 1790252236.2424479, "why": "20 s after the install"}
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"apps": {
|
||||
"wishlist": {
|
||||
"A": {
|
||||
"u": "drill299dcd",
|
||||
"pw": "Drill-59cfd7e5d859fcd1"
|
||||
}
|
||||
},
|
||||
"navidrome": {
|
||||
"A": {
|
||||
"user": "drill84ab65",
|
||||
"pw": "Drill-305976efc5c354dedca6"
|
||||
}
|
||||
},
|
||||
"n8n": {
|
||||
"A": {
|
||||
"email": "drill-97a95a4e@gate.invalid",
|
||||
"pw": "Drilldef711af0d342c2b1"
|
||||
}
|
||||
}
|
||||
},
|
||||
"setup_readback": {
|
||||
"wishlist": {
|
||||
"A": true
|
||||
},
|
||||
"navidrome": {
|
||||
"A": true
|
||||
},
|
||||
"nextcloud": {
|
||||
"A": true,
|
||||
"files": [
|
||||
{
|
||||
"felhom-seed-0-e19728.txt": true,
|
||||
"felhom-seed-2-8620d3.txt": true
|
||||
},
|
||||
"404"
|
||||
]
|
||||
}
|
||||
},
|
||||
"heads": {
|
||||
"n8n": "# n8n - Workflow automatizálás vizuális szerkesztővel\n# Domain: ${SUBDOMAIN}.${DOMAIN}\n# Database: None (file-based)\n# RAM: ~150M (mem_limit: 512M) | Pi-compatible: No\n#\n# Environment variables:\n# DOMAIN - Your domain (e.g., demo-felhom.eu)\n# N8N_ENCRYPTION_KEY- Titkosítási kulcs (auto-generated)\n\nservices:\n n8n:\n image: n8nio/n8n:2.41.1\n container_name: n8n\n restart: unless-stopped\n environment:\n - TZ=Europe/Budapest\n - N8N_HOST=${SUBDOMAIN}.${DOMAIN}\n - N8N_PROTOCOL=https\n - WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN}/\n - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}\n volumes:\n - n8n_data:/home/node/.n8n\n networks:\n - traefik-public\n deploy:\n resources:\n limits:\n memory: 1536M\n healthcheck:\n test: [\"CMD\", \"wget\", \"--spider\", \"-q\", \"http://127.0.0.1:5678/healthz\"]\n interval: 30s\n timeout: 5s\n retries: 3\n start_period: 30s\n labels:\n - \"traefik.enable=true\"\n - \"traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)\"\n - \"traefik.http.routers.n8n.entrypoints=websecure\"\n - \"traefik.http.routers.n8n.tls=true\"\n - \"traefik.http.routers.n8n.tls.certresolver=letsencrypt\"\n - \"traefik.http.services.n8n.loadbalancer.server.port=5678\"\n\nvolumes:\n n8n_data:\n\nnetworks:\n traefik-public:\n external: true\n"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"kind": "power_cut", "cmd": "pct stop 9202; pct start 9202", "fired_at": "13:45:41", "result": "stop_rc=0 start_rc=0 "}
|
||||
@@ -0,0 +1 @@
|
||||
{"kind": "docker_restart", "cmd": "pct exec 9202 -- systemctl restart docker", "fired_at": "13:49:08", "result": "rc=0"}
|
||||
@@ -0,0 +1 @@
|
||||
{"kind": "power_cut", "cmd": "pct stop 9202; pct start 9202", "fired_at": "14:04:51", "result": "stop_rc=0 start_rc=0 "}
|
||||
@@ -0,0 +1 @@
|
||||
{"kind": "controller_killed", "cmd": "kill -9 of the controller PID (1 of max 3)", "fired_at": "14:09:22", "result": "killed pid 2474 rc=0"}
|
||||
@@ -0,0 +1 @@
|
||||
{"kind": "disk_to_floor_plus_1g", "cmd": "fallocate /var/lib/docker/chaos-fill leaving 3 GB free (floor 2 GB + 1 GB)", "fired_at": "14:17:25", "result": "rc=0 filled 39025688576 bytes /dev/loop1 69G 62G 3.0G 96% /var/lib/docker ", "undone": "14:19 rm -f /var/lib/docker/chaos-fill -> /dev/loop1 69G 26G 40G 40% /var/lib/docker"}
|
||||
@@ -0,0 +1,3 @@
|
||||
13:44:27 ==== ROUND 1: oom_app on chaosoom x power_cut (2026-09-24T11:44:27Z)
|
||||
13:44:27 + 0.1s chaosoom: deployed=None state=None updating=None phase=None hold=None
|
||||
13:44:47 >>> ARMED accident power_cut (20 s after the install)
|
||||
@@ -0,0 +1,554 @@
|
||||
2026/09/24 11:45:59 main.go:335: [INFO] felhom-controller 0.269.1 starting (customer: demo-hp, domain: enkisfelhom.hu)
|
||||
2026/09/24 11:45:59 settings.go:709: [INFO] [settings] Loaded settings from /opt/docker/felhom-controller/data/settings.json
|
||||
2026/09/24 11:45:59 settings.go:1671: [DEBUG] [settings] AutoDiscoverStoragePaths discovered=[/mnt/felhom-drives/scratch_hdd/userdata/navidrome /mnt/felhom-drives/scratch_hdd/userdata/nextcloud /mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx /mnt/felhom-drives/scratch_hdd/userdata/romm] fallback="" existing=5
|
||||
2026/09/24 11:45:59 main.go:361: [INFO] Encryption key loaded from /opt/docker/felhom-controller/data/encryption.key
|
||||
2026/09/24 11:46:00 manager.go:328: [INFO] [stacks] Using compose command: docker compose
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=true composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=false composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 11:46:00 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 11:46:00 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 11:46:00 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (9 deployed, 49 available)
|
||||
2026/09/24 11:46:00 deploy.go:1104: [DEBUG] [stacks] InjectMissingFields: checking 9 stacks
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack wishlist — 2 deploy fields, 2 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack privatebin — 2 deploy fields, 2 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack paperless-ngx — 8 deploy fields, 8 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack nextcloud — 7 deploy fields, 7 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack romm — 6 deploy fields, 6 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack navidrome — 3 deploy fields, 3 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack gokapi — 3 deploy fields, 3 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack chaosoom — 2 deploy fields, 2 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack vikunja — 3 deploy fields, 3 existing env vars
|
||||
2026/09/24 11:46:00 deploy.go:1189: [INFO] [stacks] InjectMissingFields: processed 9 stacks
|
||||
2026/09/24 11:46:00 manager.go:467: [DEBUG] [stacks] MigrateEncryption: checking 9 deployed stacks for plaintext sensitive values
|
||||
2026/09/24 11:46:00 manager.go:487: [DEBUG] [stacks] MigrateEncryption: checking stack "paperless-ngx" (3 sensitive fields)
|
||||
2026/09/24 11:46:00 manager.go:487: [DEBUG] [stacks] MigrateEncryption: checking stack "nextcloud" (3 sensitive fields)
|
||||
2026/09/24 11:46:00 manager.go:487: [DEBUG] [stacks] MigrateEncryption: checking stack "romm" (3 sensitive fields)
|
||||
2026/09/24 11:46:00 manager.go:487: [DEBUG] [stacks] MigrateEncryption: checking stack "gokapi" (1 sensitive fields)
|
||||
2026/09/24 11:46:00 manager.go:487: [DEBUG] [stacks] MigrateEncryption: checking stack "vikunja" (1 sensitive fields)
|
||||
2026/09/24 11:46:00 manager.go:511: [INFO] [stacks] Encryption migration: no stacks needed migration
|
||||
2026/09/24 11:46:00 desiredstate.go:137: [INFO] [stacks] desired-state backfill: 0 app(s) recorded as running, 0 left unrecorded (state ambiguous — legacy boot behaviour retained)
|
||||
2026/09/24 11:46:00 installed.go:537: [INFO] [stacks] installed-images backfill: 0 app(s) recorded, 9 already had a record, 0 left unrecorded (could not be observed completely — unknown, which renders nothing)
|
||||
2026/09/24 11:46:00 pin.go:290: [INFO] [stacks] pin adoption: 0 pinned, 9 already pinned, 0 left unpinned (0 not completely observed, 0 running something the template no longer offers)
|
||||
2026/09/24 11:46:00 undo.go:656: [INFO] [stacks] applied-meta backfill (R-646): recorded 0 []; skipped 0 [] — not current with the catalog, their pinned version's .felhom.yml is no longer on the box
|
||||
2026/09/24 11:46:00 sync.go:117: [INFO] [sync] Starting catalog sync (repo: https://gitea.dooplex.hu/admin/app-catalog-drill.git, interval: 15m0s)
|
||||
2026/09/24 11:46:00 info.go:13: [DEBUG] [system] CPUCollector.Start: sampleRate=5s
|
||||
2026/09/24 11:46:00 sync.go:208: [INFO] [sync] Starting catalog sync
|
||||
2026/09/24 11:46:00 sync.go:296: [INFO] [sync] Pulling latest from https://gitea.dooplex.hu/admin/app-catalog-drill.git (branch: main)
|
||||
2026/09/24 11:46:00 sync.go:298: [DEBUG] [sync] git fetch --depth 1 origin main in /opt/docker/felhom-controller/data/catalog-cache
|
||||
2026/09/24 11:46:00 sync.go:627: [DEBUG] [sync] Running: git fetch --depth 1 origin main
|
||||
2026/09/24 11:46:00 main.go:515: [INFO] Metrics store opened at /opt/docker/felhom-controller/data/metrics.db
|
||||
2026/09/24 11:46:00 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 11:46:00 main.go:527: [INFO] Metrics collector started (60s interval)
|
||||
2026/09/24 11:46:00 restore_record_wiring.go:35: [INFO] [backup] restore record wired: /opt/docker/felhom-controller/data/restore-status.json (interrupted at startup: false)
|
||||
2026/09/24 11:46:00 notifier.go:81: [INFO] Notifier disabled (hub not configured)
|
||||
2026/09/24 11:46:00 main.go:692: [INFO] [mailrelay] app-email shim unavailable (no hub configured or disabled in config)
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: status-refresh (every 10s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="status-refresh" interval=10s totalJobs=1
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: stack-scan (every 2m0s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="stack-scan" interval=2m0s totalJobs=2
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: health-probes (every 10s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="health-probes" interval=10s totalJobs=3
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: system-health (every 5m0s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="system-health" interval=5m0s totalJobs=4
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: deadapp-check (every 30s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="deadapp-check" interval=30s totalJobs=5
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: ring-spill (every 30s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="ring-spill" interval=30s totalJobs=6
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job db-dump scheduled for 2026-09-25 13:20 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="db-dump" schedule="13:20" nextRun=2026-09-25T13:20:00+02:00 totalJobs=7
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: offsite-credential-retry (every 5m0s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="offsite-credential-retry" interval=5m0s totalJobs=8
|
||||
2026/09/24 11:46:00 scheduler.go:102: [INFO] [scheduler] Registered periodic job: backup-cache (every 5m0s)
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="backup-cache" interval=5m0s totalJobs=9
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job tier2-backup scheduled for 2026-09-24 14:20 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="tier2-backup" schedule="14:20" nextRun=2026-09-24T14:20:00+02:00 totalJobs=10
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job offbox-backup scheduled for 2026-09-24 15:05 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offbox-backup" schedule="15:05" nextRun=2026-09-24T15:05:00+02:00 totalJobs=11
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job offsite-abandon-sweep scheduled for 2026-09-25 05:10 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offsite-abandon-sweep" schedule="05:10" nextRun=2026-09-25T05:10:00+02:00 totalJobs=12
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job offsite-integrity scheduled for 2026-09-25 06:00 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offsite-integrity" schedule="06:00" nextRun=2026-09-25T06:00:00+02:00 totalJobs=13
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job offsite-proof scheduled for 2026-09-25 05:30 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offsite-proof" schedule="05:30" nextRun=2026-09-25T05:30:00+02:00 totalJobs=14
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job metrics-prune scheduled for 2026-09-25 04:00 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="metrics-prune" schedule="04:00" nextRun=2026-09-25T04:00:00+02:00 totalJobs=15
|
||||
2026/09/24 11:46:00 scheduler.go:132: [INFO] [scheduler] Daily job fill-watch scheduled for 2026-09-25 03:30 CEST
|
||||
2026/09/24 11:46:00 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="fill-watch" schedule="03:30" nextRun=2026-09-25T03:30:00+02:00 totalJobs=16
|
||||
2026/09/24 11:46:00 selftest.go:50: [INFO] ========== Startup Self-Test ==========
|
||||
2026/09/24 11:46:00 sync.go:212: [ERROR] [sync] Catalog sync failed: git fetch: git fetch --depth 1 origin main: exit status 128
|
||||
stderr: fatal: unable to access 'https://gitea.dooplex.hu/admin/app-catalog-drill.git/': Could not resolve host: gitea.dooplex.hu
|
||||
2026/09/24 11:46:00 sync.go:122: [INFO] [sync] Initial sync: Git hiba: git fetch: git fetch --depth 1 origin main: exit status 128
|
||||
stderr: fatal: unable to access 'https://gitea.dooplex.hu/admin/app-catalog-drill.git/': Could not resolve host: gitea.dooplex.hu
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Docker socket: reachable (v29.8.0)
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Stacks directory: /opt/docker/stacks
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Data directory: /opt/docker/felhom-controller/data (writable)
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] System data path: /mnt/sys_drive
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Storage paths: 1 connected, 4 disconnected
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Git catalog: 56 app definitions found
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Hub connectivity: hub disabled, skipped
|
||||
2026/09/24 11:46:01 selftest.go:68: [INFO] [PASS] Metrics DB: 8.1 MB
|
||||
2026/09/24 11:46:01 selftest.go:70: [INFO] ========================================
|
||||
2026/09/24 11:46:01 selftest.go:71: [INFO] Self-test complete: 8 passed, 0 warnings, 0 failed
|
||||
2026/09/24 11:46:01 scheduler.go:206: [INFO] [scheduler] Starting scheduler with 16 jobs
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] scheduler started: periodic=8 daily=8
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job db-dump: next run at 2026-09-25 13:20:00 CEST (waiting 23h33m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job offsite-abandon-sweep: next run at 2026-09-25 05:10:00 CEST (waiting 15h23m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job tier2-backup: next run at 2026-09-24 14:20:00 CEST (waiting 33m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job offbox-backup: next run at 2026-09-24 15:05:00 CEST (waiting 1h18m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job offsite-proof: next run at 2026-09-25 05:30:00 CEST (waiting 15h43m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job offsite-integrity: next run at 2026-09-25 06:00:00 CEST (waiting 16h13m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job metrics-prune: next run at 2026-09-25 04:00:00 CEST (waiting 14h13m59s)
|
||||
2026/09/24 11:46:01 scheduler.go:67: [DEBUG] [scheduler] daily job fill-watch: next run at 2026-09-25 03:30:00 CEST (waiting 13h43m59s)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4187MB avail≈21711MB
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25748124 → total=25898MB avail=21711MB used=4187MB (16.2%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=22.5GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readLoadAvg: raw="5.31 2.81 2.70 19/1482 125" → 1m=5.31 5m=2.81 15m=2.70
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 80.8°C (hwmon2)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetInfo done in 421ms — mem=4187MB/25898MB (16.2%), rootDisk=22.5GB/68.4GB (32.8%), load=5.31/2.81/2.70, temp=80.8°C (hwmon2), cpu=0.0%
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 11:46:01 server.go:250: [DEBUG] [web] NewServer: initializing web server v0.269.1
|
||||
2026/09/24 11:46:01 server.go:251: [DEBUG] [web] NewServer: backup=true scheduler=true alertMgr=true notifier=true updater=false
|
||||
2026/09/24 11:46:01 infra.go:228: [INFO] [infra] connected felhom-controller to traefik-public
|
||||
2026/09/24 11:46:01 infra.go:67: [INFO] [infra] cloudflared skipped — no cf_tunnel_token configured (LAN-only node)
|
||||
2026/09/24 11:46:01 backup.go:467: [DEBUG] groupStacksByDrive: /mnt/felhom-drives/scratch_hdd/userdata/navidrome → [navidrome]
|
||||
2026/09/24 11:46:01 backup.go:467: [DEBUG] groupStacksByDrive: /mnt/felhom-drives/scratch_hdd/userdata/nextcloud → [nextcloud]
|
||||
2026/09/24 11:46:01 backup.go:467: [DEBUG] groupStacksByDrive: /mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx → [paperless-ngx]
|
||||
2026/09/24 11:46:01 backup.go:467: [DEBUG] groupStacksByDrive: /mnt/felhom-drives/scratch_hdd/userdata/romm → [romm]
|
||||
2026/09/24 11:46:01 backup.go:467: [DEBUG] groupStacksByDrive: /mnt/sys_drive → [gokapi, privatebin, vikunja, wishlist, chaosoom]
|
||||
2026/09/24 11:46:01 backup.go:1119: [INFO] [backup] Found 9 DB dump files across drives
|
||||
2026/09/24 11:46:01 dbdump.go:130: [DEBUG] DiscoverDatabases: running docker ps to find database containers
|
||||
2026/09/24 11:46:01 server.go:327: [DEBUG] [web] loadTemplates: lang=hu loaded 81 templates, 1886 markers expanded in 117.796502ms
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4223MB avail≈21675MB
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25706264 → total=25898MB avail=21675MB used=4223MB (16.3%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=22.5GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readLoadAvg: raw="5.31 2.81 2.70 16/1476 174" → 1m=5.31 5m=2.81 15m=2.70
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 80.9°C (hwmon2)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetInfo done in 260ms — mem=4223MB/25898MB (16.3%), rootDisk=22.5GB/68.4GB (32.8%), load=5.31/2.81/2.70, temp=80.9°C (hwmon2), cpu=0.0%
|
||||
2026/09/24 11:46:01 healthcheck.go:86: [DEBUG] [monitor] Raw values: disk=32.8%, hdd=7.8% (configured=true), mem=16.3% (4223MB/25898MB), cpu=0.0%, temp=80.9°C (hwmon2)
|
||||
2026/09/24 11:46:01 healthcheck.go:118: [DEBUG] [monitor] SSD disk: OK (33%)
|
||||
2026/09/24 11:46:01 healthcheck.go:151: [DEBUG] [monitor] Memory: OK (16%)
|
||||
2026/09/24 11:46:01 healthcheck.go:179: [WARN] [monitor] Temperature threshold breached: 81°C (limit: 75°C)
|
||||
2026/09/24 11:46:01 healthcheck.go:182: [DEBUG] [monitor] Temperature: WARN (81°C >= 75°C)
|
||||
2026/09/24 11:46:01 dbdump.go:149: [DEBUG] DiscoverDatabases: docker ps output: 86ba63e28bd7 felhom-controller gitea.dooplex.hu/admin/felhom-controller:0.269.1
|
||||
557bdb05d3bd vikunja vikunja vikunja/vikunja:2.3.0
|
||||
8ed284296786 romm-db romm mariadb:11.8
|
||||
0a82332f8e1c romm romm rommapp/romm:5.3.1
|
||||
9ec77cdb422a romm-redis romm redis:7-alpine
|
||||
d9846695ae0d wishlist wishlist ghcr.io/cmintey/wishlist:v0.67.1
|
||||
8867e567d339 privatebin privatebin privatebin/pdo:2.0.6
|
||||
0732d8573acd paperless-webserver paperless-ngx ghcr.io/paperless-ngx/paperless-ngx:2.20.15
|
||||
3df88f0fdd1d paperless-redis pap...
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.269.1, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container vikunja (image=vikunja/vikunja:2.3.0, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: romm-db (id=8ed284296786)
|
||||
2026/09/24 11:46:01 server.go:327: [DEBUG] [web] loadTemplates: lang=en loaded 81 templates, 1886 markers expanded in 172.029097ms
|
||||
2026/09/24 11:46:01 server.go:270: [INFO] [web] Auth: using password from settings.json
|
||||
2026/09/24 11:46:01 server.go:814: [DEBUG] [web] CatchAllMiddleware: controller host=felhom.enkisfelhom.hu
|
||||
2026/09/24 11:46:01 main.go:1950: [INFO] Web UI listening on :8080
|
||||
2026/09/24 11:46:01 handlers.go:3492: [INFO] [web] FileBrowser: drive /mnt/felhom-drives/scratch_hdd/userdata/nextcloud not mounted — skipping userdata skeleton
|
||||
2026/09/24 11:46:01 handlers.go:3492: [INFO] [web] FileBrowser: drive /mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx not mounted — skipping userdata skeleton
|
||||
2026/09/24 11:46:01 handlers.go:3492: [INFO] [web] FileBrowser: drive /mnt/felhom-drives/scratch_hdd/userdata/romm not mounted — skipping userdata skeleton
|
||||
2026/09/24 11:46:01 handlers.go:3492: [INFO] [web] FileBrowser: drive /mnt/felhom-drives/scratch_hdd/userdata/navidrome not mounted — skipping userdata skeleton
|
||||
2026/09/24 11:46:01 manager.go:258: [DEBUG] [integrations] ReapplyConfigForTarget: target=filebrowser integrations=0
|
||||
2026/09/24 11:46:01 dbdump.go:198: [DEBUG] DiscoverDatabases: romm-db → stack=romm, dbUser=root, dbName=romm
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm (image=rommapp/romm:5.3.1, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container wishlist (image=ghcr.io/cmintey/wishlist:v0.67.1, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container privatebin (image=privatebin/pdo:2.0.6, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-webserver (image=ghcr.io/paperless-ngx/paperless-ngx:2.20.15, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:178: [DEBUG] DiscoverDatabases: found postgres container: paperless-postgres (id=5da8830bc973)
|
||||
2026/09/24 11:46:01 dbdump.go:896: [DEBUG] DiscoverDatabases: paperless-postgres → stack "paperless-ngx" from the compose project label (the container name would have given "paperless")
|
||||
2026/09/24 11:46:01 auth.go:123: [DEBUG] [web] auth: rejected GET /api/stacks/chaosoom from 172.18.0.6:51320 (invalid/expired session)
|
||||
2026/09/24 11:46:01 auth.go:126: [WARN] [api] Unauthorized request to /api/stacks/chaosoom from 172.18.0.6:51320
|
||||
2026/09/24 11:46:01 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.6:51320 (X-Forwarded-For: 192.168.0.180)
|
||||
2026/09/24 11:46:01 dbdump.go:198: [DEBUG] DiscoverDatabases: paperless-postgres → stack=paperless-ngx, dbUser=paperless, dbName=paperless
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud (image=nextcloud:34.0.4-apache, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: nextcloud-db (id=9837f4d677cb)
|
||||
2026/09/24 11:46:01 healthcheck.go:201: [DEBUG] [monitor] Docker daemon: OK
|
||||
2026/09/24 11:46:01 healthcheck.go:209: [DEBUG] [monitor] Checking 1 protected containers: [traefik]
|
||||
2026/09/24 11:46:01 dbdump.go:198: [DEBUG] DiscoverDatabases: nextcloud-db → stack=nextcloud, dbUser=root, dbName=nextcloud
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container navidrome (image=deluan/navidrome:0.64.1, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
|
||||
2026/09/24 11:46:01 dbdump.go:205: [DEBUG] DiscoverDatabases: found 3 database(s), skipped 13 non-DB container(s)
|
||||
2026/09/24 11:46:01 dbdump.go:208: [INFO] [backup] Discovered 3 databases
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 1 HDD mounts for /opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 2 HDD mounts for /opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:46:01 auth.go:202: [DEBUG] [web] login successful from 192.168.0.180, creating session
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 1 HDD mounts for /opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 11:46:01 auth.go:268: [DEBUG] [web] session created, expires=2026-10-01T11:46:01Z, active_sessions=1
|
||||
2026/09/24 11:46:01 auth.go:222: [INFO] [web] Login from 172.18.0.6:51320
|
||||
2026/09/24 11:46:01 healthcheck.go:219: [DEBUG] [monitor] All protected containers running
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/nextcloud" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/romm" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/navidrome" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 healthcheck.go:238: [INFO] [monitor] Health check: status=warn
|
||||
2026/09/24 11:46:01 healthcheck.go:242: [DEBUG] [monitor] Final status: warn (issues=0, warnings=5, info=3)
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:46:01 [INFO] [backup] Discovered app data: 9 apps
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/navidrome" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/nextcloud" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 server.go:545: [DEBUG] [web] ServeHTTP: GET / from 172.18.0.6:51320
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 server.go:545: [DEBUG] [web] ServeHTTP: GET /launcher from 172.18.0.6:51320
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=22.5 GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/romm" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=22.5 GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=22.5 GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:46:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=22.5 GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:46:01 recovery_unit.go:224: [INFO] [backup] Recovery unit captured for chaosoom → /mnt/sys_drive/felhom-data/backups/primary/chaosoom (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)
|
||||
2026/09/24 11:46:01 backup.go:1189: [INFO] [backup] Backup status cache refreshed
|
||||
2026/09/24 11:46:01 handlers.go:3432: [INFO] [web] FileBrowser sync — no config/compose change, ensured running without recreate (5 storage path(s))
|
||||
2026/09/24 11:46:05 info.go:13: [DEBUG] [system] CPUCollector: first sample — cpu=97.1% (idle=116 total=3976)
|
||||
2026/09/24 11:46:06 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event controller_started (severity info) — further controller_started events are logged at DEBUG only
|
||||
2026/09/24 11:46:10 main.go:2356: [DEBUG] [bootrecon] boot window: fleet still changing (9 app(s)) — resampling
|
||||
2026/09/24 11:46:11 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:46:11 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:46:11 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 4 targets (0 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:46:11 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:46:11 healthprobe.go:181: [DEBUG] Health probe privatebin: HTTP GET :8080/ → 200 (12ms)
|
||||
2026/09/24 11:46:11 healthprobe.go:181: [DEBUG] Health probe navidrome: API GET :4533/ping → 200 (15ms)
|
||||
2026/09/24 11:46:11 healthprobe.go:181: [DEBUG] Health probe nextcloud: API GET :80/status.php → 200 (67ms)
|
||||
2026/09/24 11:46:11 healthprobe.go:159: [WARN] Health probes: 3 ok, 1 unhealthy (of 4 probed)
|
||||
2026/09/24 11:46:15 main.go:2356: [DEBUG] [bootrecon] boot window: fleet still changing (9 app(s)) — resampling
|
||||
2026/09/24 11:46:21 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:46:21 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:46:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:21 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 2 targets (3 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:46:21 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:46:21 healthprobe.go:181: [DEBUG] Health probe wishlist: HTTP GET :3000/ → 307 (7ms)
|
||||
2026/09/24 11:46:21 healthprobe.go:159: [WARN] Health probes: 1 ok, 1 unhealthy (of 2 probed)
|
||||
2026/09/24 11:46:25 main.go:2367: [INFO] [bootrecon] boot window: fleet settled after 20s (3 identical samples 5s apart) — sweeping
|
||||
2026/09/24 11:46:25 bootrecon.go:236: [INFO] [bootrecon] "gokapi" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T10:37:48Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery
|
||||
2026/09/24 11:46:25 bootrecon.go:251: [INFO] [bootrecon] Boot reconciliation: nothing to start — 1 app(s) held (absent drive / quiesce / app-data operation): [gokapi]
|
||||
2026/09/24 11:46:31 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:46:31 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:46:31 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 11:46:31 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 11:46:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:31 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (4 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:46:31 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:46:31 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 11:46:41 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:46:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 11:46:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:41 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (5 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:46:41 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:46:51 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:46:51 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:46:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:46:51 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 3 targets (4 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:46:51 healthprobe.go:181: [DEBUG] Health probe romm: HTTP GET :8080/ → 200 (1ms)
|
||||
2026/09/24 11:46:51 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:46:51 healthprobe.go:181: [DEBUG] Health probe paperless-ngx: HTTP GET :8000/ → 302 (6ms)
|
||||
2026/09/24 11:46:51 healthprobe.go:159: [WARN] Health probes: 2 ok, 1 unhealthy (of 3 probed)
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5236MB avail≈20662MB
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24504156 → total=25898MB avail=20662MB used=5236MB (20.2%)
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=22.5GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readLoadAvg: raw="6.18 3.55 2.97 8/1495 392" → 1m=6.18 5m=3.55 15m=2.97
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 76.9°C (hwmon2)
|
||||
2026/09/24 11:47:00 info.go:13: [DEBUG] [system] GetInfo done in 74ms — mem=5236MB/25898MB (20.2%), rootDisk=22.5GB/68.4GB (32.8%), load=6.18/3.55/2.97, temp=76.9°C (hwmon2), cpu=53.9%
|
||||
2026/09/24 11:47:01 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 11:47:01 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:47:01 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:47:01 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:01 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:47:11 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:47:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:11 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:47:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:11 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:47:11 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:47:11 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 11:47:21 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:47:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:21 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:47:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:21 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:21 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:47:21 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:47:21 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=22.5 GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/navidrome" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/nextcloud" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/romm" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:47:30 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=22.5 GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:47:30 fillwatch.go:256: [INFO] [fillwatch] checked 7 filesystem(s), 0 unreadable/skipped, 0 notification(s); bands: all ok
|
||||
2026/09/24 11:47:31 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:47:31 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 11:47:31 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:31 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 11:47:31 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:31 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:47:31 main.go:872: [WARN] [deadapp] chaosoom: container chaosoom was OOM-killed (started 2026-09-24T11:47:10.100857309Z; kills 15, limit 32M, peak 32M)
|
||||
2026/09/24 11:47:31 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_oom (severity warning) — further app_oom events are logged at DEBUG only
|
||||
2026/09/24 11:47:41 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:47:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:41 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:47:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:41 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:41 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:47:41 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:47:41 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 11:47:51 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:47:51 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:47:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:51 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:47:51 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:47:51 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:47:51 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5188MB avail≈20710MB
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24561624 → total=25898MB avail=20710MB used=5188MB (20.0%)
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=22.5GB avail=42.4GB (32.8%)
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readLoadAvg: raw="4.01 3.41 2.95 4/1501 529" → 1m=4.01 5m=3.41 15m=2.95
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 69.5°C (hwmon2)
|
||||
2026/09/24 11:48:00 info.go:13: [DEBUG] [system] GetInfo done in 61ms — mem=5188MB/25898MB (20.0%), rootDisk=22.5GB/68.4GB (32.8%), load=4.01/3.41/2.95, temp=69.5°C (hwmon2), cpu=32.9%
|
||||
2026/09/24 11:48:01 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:48:01 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 11:48:01 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 11:48:01 scheduler.go:346: [INFO] [scheduler] Running job: stack-scan
|
||||
2026/09/24 11:48:01 scheduler.go:67: [DEBUG] [scheduler] job stack-scan: execution starting
|
||||
2026/09/24 11:48:01 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:48:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:01 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:01 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 11:48:01 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.7:8999: connect: connection refused
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=true composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=false composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 11:48:01 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 11:48:01 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 11:48:01 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (9 deployed, 49 available)
|
||||
2026/09/24 11:48:01 scheduler.go:363: [INFO] [scheduler] Job stack-scan completed (took 91ms)
|
||||
2026/09/24 11:48:01 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 11:48:01 main.go:872: [WARN] [deadapp] chaosoom: container chaosoom was OOM-killed (started 2026-09-24T11:47:10.100857309Z; kills 38, limit 32M, peak 32M)
|
||||
2026/09/24 11:48:01 notifier.go:738: [ERROR] [notify] chaosoom: container chaosoom OOM STORM — 38 kills in 30 min (limit 32M, peak 32M)
|
||||
2026/09/24 11:48:01 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_oom_storm (severity error) — further app_oom_storm events are logged at DEBUG only
|
||||
2026/09/24 11:48:01 main.go:3671: [WARN] [deadapp] chaosoom: oom_storm — 23 in 30m0s; STOPPING it (decision 28)
|
||||
2026/09/24 11:48:01 manager.go:1283: [DEBUG] [stacks] StopStack chaosoom: current state=running deployed=true containers=1
|
||||
2026/09/24 11:48:01 manager.go:1286: [INFO] [stacks] Stopping stack: chaosoom
|
||||
2026/09/24 11:48:01 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 11:48:01 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/chaosoom)
|
||||
2026/09/24 11:48:11 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:11 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 11:48:11 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 11:48:11 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 11:48:11 manager.go:1483: [DEBUG] Command completed: docker compose down (took 10.3s)
|
||||
2026/09/24 11:48:11 manager.go:1295: [INFO] [stacks] Stack chaosoom stopped successfully (took 10.3s)
|
||||
2026/09/24 11:48:11 settings.go:1814: [WARN] [settings] restore hold SET for chaosoom — the app stays stopped until it is cleared
|
||||
2026/09/24 11:48:11 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17886 bytes)
|
||||
2026/09/24 11:48:11 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 11:48:11 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17926 bytes)
|
||||
2026/09/24 11:48:11 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 11:48:11 update_guard.go:776: [WARN] [backup] chaosoom is STOPPED by the box: oom_storm (trip 1 within 24h0m0s) — Start gives it one more try (decision 28)
|
||||
2026/09/24 11:48:11 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_stopped_unhealthy (severity warning) — further app_stopped_unhealthy events are logged at DEBUG only
|
||||
2026/09/24 11:48:13 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.6:51320 (X-Forwarded-For: 192.168.0.180)
|
||||
2026/09/24 11:48:13 auth.go:202: [DEBUG] [web] login successful from 192.168.0.180, creating session
|
||||
2026/09/24 11:48:13 auth.go:268: [DEBUG] [web] session created, expires=2026-10-01T11:48:13Z, active_sessions=2
|
||||
2026/09/24 11:48:13 auth.go:222: [INFO] [web] Login from 172.18.0.6:51320
|
||||
2026/09/24 11:48:13 server.go:545: [DEBUG] [web] ServeHTTP: GET / from 172.18.0.6:51320
|
||||
2026/09/24 11:48:13 server.go:545: [DEBUG] [web] ServeHTTP: GET /launcher from 172.18.0.6:51320
|
||||
2026/09/24 11:48:13 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoom from 172.18.0.6:51320
|
||||
2026/09/24 11:48:13 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoom from 172.18.0.6:51320
|
||||
2026/09/24 11:48:13 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoom from 172.18.0.6:51320
|
||||
2026/09/24 11:48:13 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoom from 172.18.0.6:51320
|
||||
@@ -0,0 +1,106 @@
|
||||
{
|
||||
"round": 1,
|
||||
"action": "oom_app",
|
||||
"accident": {
|
||||
"kind": "power_cut",
|
||||
"cmd": "pct stop 9202; pct start 9202",
|
||||
"fired_at": "13:45:41",
|
||||
"result": "stop_rc=0 start_rc=0 "
|
||||
},
|
||||
"app": "chaosoom",
|
||||
"started": "2026-09-24T11:45:08Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": null,
|
||||
"state": null,
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
}
|
||||
},
|
||||
"act": "deploy -> 202",
|
||||
"armed_at": "13:45:33",
|
||||
"armed_why": "20 s after the install",
|
||||
"controller_back_s": 0.2,
|
||||
"time_to_steady_s": 184.9,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "stopped",
|
||||
"update_phase": null,
|
||||
"hold_reason": "Az alkalmazást leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). Az Indítás gombbal újra megpróbálhatod.",
|
||||
"hold_kind": "unhealthy_stop",
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 81°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az alkalmazást leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). Az Indítás gombbal újra megpróbálhatod.",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 81°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"We stopped the app because it kept crashing (or ran out of memory). Press Start to try again.",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"readback": null,
|
||||
"events": [
|
||||
"2026-09-24T11:48:01Z app_oom_storm (error)",
|
||||
"2026-09-24T11:48:11Z app_stopped_unhealthy (warning)"
|
||||
],
|
||||
"box_log": [
|
||||
"2026-09-24T11:45:09Z INFO [sync] Updated chaosoom/docker-compose.yml",
|
||||
"2026-09-24T11:45:09Z INFO [sync] Updated chaosoom/.felhom.yml",
|
||||
"2026-09-24T11:45:09Z INFO [sync] Updated chaosoomb/docker-compose.yml",
|
||||
"2026-09-24T11:45:09Z INFO [sync] Updated chaosoomb/.felhom.yml",
|
||||
"2026-09-24T11:45:09Z INFO [api] Catalog sync completed: Sablonok frissítve — új: chaoscrash, chaosoom, chaosoomb",
|
||||
"2026-09-24T11:45:13Z INFO [api] Deploy requested for stack: chaosoom",
|
||||
"2026-09-24T11:45:13Z INFO [stacks] Deploying stack chaosoom with 2 env vars: [DOMAIN, SUBDOMAIN]",
|
||||
"2026-09-24T11:45:13Z INFO [stacks] Deploying stack chaosoom — checking 1 images...",
|
||||
"2026-09-24T11:45:13Z INFO [stacks] Stack chaosoom deployed successfully (took 0.4s)",
|
||||
"2026-09-24T11:45:14Z INFO [stacks] installed-images chaosoom: recorded 1 service(s) (chaosoom=alpine:3.20 (sha256:d9e853e87e55…))",
|
||||
"2026-09-24T11:45:14Z INFO [stacks] pin chaosoom: chaosoom=alpine:3.20",
|
||||
"2026-09-24T11:45:17Z INFO [stacks] Stack chaosoom post-start status:",
|
||||
"2026-09-24T11:45:17Z INFO [stacks] chaosoom alpine:3.20 running Up 3 seconds",
|
||||
"2026-09-24T11:46:00Z INFO [backup] restore record wired: /opt/docker/felhom-controller/data/restore-status.json (interrupted at startup: false)",
|
||||
"2026-09-24T11:46:00Z INFO [scheduler] Registered periodic job: deadapp-check (every 30s)",
|
||||
"2026-09-24T11:46:00Z INFO [scheduler] Registered periodic job: backup-cache (every 5m0s)",
|
||||
"2026-09-24T11:46:00Z INFO [scheduler] Daily job tier2-backup scheduled for 2026-09-24 14:20 CEST",
|
||||
"2026-09-24T11:46:00Z INFO [scheduler] Daily job offbox-backup scheduled for 2026-09-24 15:05 CEST",
|
||||
"2026-09-24T11:46:01Z INFO [backup] Found 9 DB dump files across drives",
|
||||
"2026-09-24T11:46:01Z WARN [monitor] Temperature threshold breached: 81°C (limit: 75°C)",
|
||||
"2026-09-24T11:46:01Z WARN [api] Unauthorized request to /api/stacks/chaosoom from 172.18.0.6:51320",
|
||||
"2026-09-24T11:46:01Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T11:46:01Z INFO [backup] Recovery unit captured for chaosoom → /mnt/sys_drive/felhom-data/backups/primary/chaosoom (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)",
|
||||
"2026-09-24T11:46:01Z INFO [backup] Backup status cache refreshed",
|
||||
"2026-09-24T11:46:25Z INFO [bootrecon] \"gokapi\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T10:37:48Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T11:47:31Z WARN [deadapp] chaosoom: container chaosoom was OOM-killed (started 2026-09-24T11:47:10.100857309Z; kills 15, limit 32M, peak 32M)",
|
||||
"2026-09-24T11:48:01Z WARN [deadapp] chaosoom: container chaosoom was OOM-killed (started 2026-09-24T11:47:10.100857309Z; kills 38, limit 32M, peak 32M)",
|
||||
"2026-09-24T11:48:01Z ERROR [notify] chaosoom: container chaosoom OOM STORM — 38 kills in 30 min (limit 32M, peak 32M)",
|
||||
"2026-09-24T11:48:01Z WARN [deadapp] chaosoom: oom_storm — 23 in 30m0s; STOPPING it (decision 28)",
|
||||
"2026-09-24T11:48:01Z INFO [stacks] Stopping stack: chaosoom",
|
||||
"2026-09-24T11:48:11Z INFO [stacks] Stack chaosoom stopped successfully (took 10.3s)",
|
||||
"2026-09-24T11:48:11Z WARN [settings] restore hold SET for chaosoom — the app stays stopped until it is cleared",
|
||||
"2026-09-24T11:48:11Z WARN [backup] chaosoom is STOPPED by the box: oom_storm (trip 1 within 24h0m0s) — Start gives it one more try (decision 28)"
|
||||
],
|
||||
"undo_copies_left": "0"
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
13:45:08 ==== ROUND 1: oom_app on chaosoom x power_cut (2026-09-24T11:45:08Z)
|
||||
13:45:13 deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
13:45:13 + 4.8s chaosoom: deployed=True state=not_deployed updating=False phase=None hold=None
|
||||
13:45:15 + 6.8s chaosoom: deployed=True state=running updating=False phase=None hold=None
|
||||
13:45:33 >>> ARMED accident power_cut (20 s after the install)
|
||||
13:45:55 + 46.5s chaosoom: deployed=None state=None updating=None phase=None hold=None
|
||||
13:46:01 + 53.0s chaosoom: deployed=True state=restarting updating=False phase=None hold=None
|
||||
13:46:05 + 57.1s chaosoom: deployed=True state=running updating=False phase=None hold=None
|
||||
13:48:13 + 184.7s chaosoom: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
13:48:13 >>> accident done: {'kind': 'power_cut', 'cmd': 'pct stop 9202; pct start 9202', 'fired_at': '13:45:41', 'result': 'stop_rc=0 start_rc=0 '}
|
||||
13:48:13 + 184.9s chaosoom: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
@@ -0,0 +1,12 @@
|
||||
13:45:08 ==== ROUND 1: oom_app on chaosoom x power_cut (2026-09-24T11:45:08Z)
|
||||
13:45:13 deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
13:45:13 + 4.8s chaosoom: deployed=True state=not_deployed updating=False phase=None hold=None
|
||||
13:45:15 + 6.8s chaosoom: deployed=True state=running updating=False phase=None hold=None
|
||||
13:45:33 >>> ARMED accident power_cut (20 s after the install)
|
||||
13:45:55 + 46.5s chaosoom: deployed=None state=None updating=None phase=None hold=None
|
||||
13:46:01 + 53.0s chaosoom: deployed=True state=restarting updating=False phase=None hold=None
|
||||
13:46:05 + 57.1s chaosoom: deployed=True state=running updating=False phase=None hold=None
|
||||
13:48:13 + 184.7s chaosoom: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
13:48:13 >>> accident done: {'kind': 'power_cut', 'cmd': 'pct stop 9202; pct start 9202', 'fired_at': '13:45:41', 'result': 'stop_rc=0 start_rc=0 '}
|
||||
13:48:13 + 184.9s chaosoom: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
13:48:20 ==== ROUND 1 END: steady in 184.9s; readback=None; events=['2026-09-24T11:48:01Z app_oom_storm (error)', '2026-09-24T11:48:11Z app_stopped_unhealthy (warning)']
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"round": 2,
|
||||
"action": "install",
|
||||
"accident": {
|
||||
"kind": "docker_restart",
|
||||
"fired_at": "13:49:08",
|
||||
"result": "rc=0"
|
||||
},
|
||||
"app": "n8n",
|
||||
"started": "2026-09-24T11:48:29Z",
|
||||
"collected_by_hand": true,
|
||||
"runner_stopped": "13:5x — the install was lost to the docker restart; the runner would have waited 25 min for a deploy that no longer existed",
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": false,
|
||||
"state": "not_deployed",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"leftovers": "app.yaml\napplied-compose.yml\napplied-meta\ndocker-compose.yml"
|
||||
},
|
||||
"readback": null,
|
||||
"events": [
|
||||
"2026-09-24T11:59:19Z health_change (warning)"
|
||||
],
|
||||
"box_log": [
|
||||
"2026-09-24T11:49:21Z WARN [api] Unauthorized request to /api/stacks/n8n from 172.18.0.11:52882",
|
||||
"2026-09-24T11:49:44Z INFO [bootrecon] \"gokapi\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T10:37:48Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T11:49:44Z INFO [bootrecon] \"chaosoom\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T11:48:01Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T11:54:19Z INFO [scheduler] Running job: backup-cache",
|
||||
"2026-09-24T11:54:19Z INFO [backup] Found 9 DB dump files across drives",
|
||||
"2026-09-24T11:54:19Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T11:54:19Z INFO [backup] Backup status cache refreshed",
|
||||
"2026-09-24T11:54:19Z INFO [scheduler] Job backup-cache completed (took 201ms)",
|
||||
"2026-09-24T11:59:19Z INFO [scheduler] Running job: backup-cache",
|
||||
"2026-09-24T11:59:19Z INFO [backup] Found 9 DB dump files across drives",
|
||||
"2026-09-24T11:59:19Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T11:59:19Z INFO [backup] Backup status cache refreshed",
|
||||
"2026-09-24T11:59:19Z INFO [scheduler] Job backup-cache completed (took 252ms)"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
13:48:29 ==== ROUND 2: install on n8n x docker_restart (2026-09-24T11:48:29Z)
|
||||
13:48:30 drill: n8n at the ladder's first from {'n8n': 'n8nio/n8n:2.31.3'}
|
||||
13:48:42 + 13.0s n8n: deployed=True state=not_deployed updating=False phase=None hold=None
|
||||
13:48:52 + 23.2s n8n: deployed=True state=deploying updating=False phase=None hold=None
|
||||
13:49:02 >>> ARMED accident docker_restart (20 s after the install press)
|
||||
13:49:11 + 41.4s n8n: deployed=None state=None updating=None phase=None hold=None
|
||||
13:49:21 + 51.7s n8n: deployed=False state=not_deployed updating=False phase=None hold=None
|
||||
@@ -0,0 +1,7 @@
|
||||
14:00:08 drill n8n image line: image: n8nio/n8n:2.31.3
|
||||
14:00:13 [1] deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
14:03:44 [1] deployed, controller state=running, pinned={'n8n': 'n8nio/n8n:2.31.3'}
|
||||
14:03:44 deploy ok=True in 211 s pinned={'n8n': 'n8nio/n8n:2.31.3'}
|
||||
14:03:45 n8n: /rest/owner/setup http=200
|
||||
14:03:46 drill: n8n back to the head (2 steps offered)
|
||||
14:03:57 steps_left=2 badge=[{'title': 'A newer version of this app is available. Select the Update button to start it.', 'text': 'Update available — 1 day ago'}]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,258 @@
|
||||
{
|
||||
"round": 3,
|
||||
"action": "cutoff_undo_file_app",
|
||||
"accident": {
|
||||
"kind": "power_cut",
|
||||
"cmd": "pct stop 9202; pct start 9202",
|
||||
"fired_at": "14:04:51",
|
||||
"result": "stop_rc=0 start_rc=0 "
|
||||
},
|
||||
"app": "nextcloud",
|
||||
"started": "2026-09-24T12:04:09Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "running",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"badge_catchup_s": 10.3,
|
||||
"act": "Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}",
|
||||
"cutoff": "copy: nextcloud_nextcloud_redis_data.pre-update-20260924T120426Z\ndata",
|
||||
"armed_at": "14:04:45",
|
||||
"armed_why": "at verifying",
|
||||
"phases": [
|
||||
[
|
||||
11.7,
|
||||
"safety-dump"
|
||||
],
|
||||
[
|
||||
14.4,
|
||||
"pulling"
|
||||
],
|
||||
[
|
||||
15.4,
|
||||
"copying"
|
||||
],
|
||||
[
|
||||
25.4,
|
||||
"starting"
|
||||
],
|
||||
[
|
||||
31.7,
|
||||
"verifying"
|
||||
],
|
||||
[
|
||||
158.4,
|
||||
"undoing"
|
||||
],
|
||||
[
|
||||
161.5,
|
||||
"failed"
|
||||
]
|
||||
],
|
||||
"held": {
|
||||
"update_phase": "failed",
|
||||
"hold_kind": "update_failed",
|
||||
"hold_no_whole_copy": null,
|
||||
"hold_reason": "A frissítés nem sikerült, és az automatikus visszaállítás sem. Az adatok az új változat által hagyott állapotban vannak. A(z) nextcloud frissítése 2026-09-24 14:06-kor nem sikerült, és az alkalmazás nem indult el az új verzióval. Az alkalmazás biztonsági okból leállítva marad, hogy az adatai ne sérüljenek. Visszaállítható a Mentések oldalon ebből a biztonsági mentésből: második meghajtó, 2026-09-24 13:04 — ez a másolat a beállításokat, az adatbázist és a fájlokat tartalmazza."
|
||||
},
|
||||
"held_page": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "stopped",
|
||||
"update_phase": "failed",
|
||||
"hold_reason": "A frissítés nem sikerült, és az automatikus visszaállítás sem. Az adatok az új változat által hagyott állapotban vannak. A(z) nextcloud frissítése 2026-09-24 14:06-kor nem sikerült, és az alkalmazás nem indult el az új verzióval. Az alkalmazás biztonsági okból leállítva marad, hogy az adatai ne sérüljenek. Visszaállítható a Mentések oldalon ebből a biztonsági mentésből: második meghajtó, 2026-09-24 13:04 — ez a másolat a beállításokat, az adatbázist és a fájlokat tartalmazza.",
|
||||
"hold_kind": "update_failed",
|
||||
"update_error": "A frissítés nem sikerült, és az automatikus visszaállítás sem. Az adatok az új változat által hagyott állapotban vannak. A(z) nextcloud frissítése 2026-09-24 14:06-kor nem sikerült, és az alkalmazás nem indult el az új verzióval. Az alkalmazás biztonsági okból leállítva marad, hogy az adatai ne sérüljenek. Visszaállítható a Mentések oldalon ebből a biztonsági mentésből: második meghajtó, 2026-09-24 13:04 — ez a másolat a beállításokat, az adatbázist és a fájlokat tartalmazza.",
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "A frissítés nem sikerült, és az automatikus visszaállítás sem.",
|
||||
"text": "Megállítva — visszaállítás szükséges"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "The update did not succeed, and the automatic undo did not either.",
|
||||
"text": "Stopped — restore needed"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 84°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"A frissítés nem sikerült, és az automatikus visszaállítás sem. Az adatok az új változat által hagyott állapotban vannak. A(z) nextcloud frissítése 2026-09-24 14:06-kor nem sikerült, és az alkalmazás nem indult el az új verzióval. Az alkalmazás biztonsági okból leállítva marad, hogy az adatai ne sérüljenek. Visszaállítható a Mentések oldalon ebből a biztonsági mentésből: második meghajtó, 2026-09-2",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 84°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"The update did not succeed, and the automatic undo did not either. The data is as the new version left it. The update of nextcloud at 2026-09-24 14:06 did not succeed, and the app did not start on the new version. The app stays stopped for safety, so that its data is not damaged. It can be restored on the Backups page from this backup: second drive, 2026-09-24 13:04 — this copy holds the settings,",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"whole_restore_press": "302",
|
||||
"whole_restore": {
|
||||
"op": "tier2-whole-restore",
|
||||
"stack": "nextcloud",
|
||||
"ok": true,
|
||||
"message": "A(z) nextcloud: 3 adatkötet és az adatbázis visszaállítva — az alkalmazás újraindult. A meghajtó fájljai: 0 visszahozva, 0 kicserélve (a régebbi élő példány megmaradt mellette, .felhom-… végződéssel), 0 újabb példány érintetlenül hagyva, 142 változatlan. Fájl nem lett törölve.",
|
||||
"finished_at": "2026-09-24T12:07:31.638297502Z"
|
||||
},
|
||||
"controller_back_s": 0.2,
|
||||
"time_to_steady_s": 203.9,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "running",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 84°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 84°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"readback": {
|
||||
"A": true,
|
||||
"files": [
|
||||
{
|
||||
"felhom-seed-0-e19728.txt": true,
|
||||
"felhom-seed-2-8620d3.txt": true
|
||||
},
|
||||
"404"
|
||||
]
|
||||
},
|
||||
"events": [],
|
||||
"box_log": [
|
||||
"2026-09-24T12:05:09Z INFO [scheduler] Daily job offbox-backup scheduled for 2026-09-24 15:05 CEST",
|
||||
"2026-09-24T12:05:09Z INFO [stacks] update nextcloud: resuming after a controller restart — `up -d` then the health wait",
|
||||
"2026-09-24T12:05:09Z INFO [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/nextcloud not mounted — skipping ensure (held by drive gate)",
|
||||
"2026-09-24T12:05:09Z INFO [backup] Found 10 DB dump files across drives",
|
||||
"2026-09-24T12:05:10Z INFO [web] FileBrowser: drive /mnt/felhom-drives/scratch_hdd/userdata/nextcloud not mounted — skipping userdata skeleton",
|
||||
"2026-09-24T12:05:10Z WARN [monitor] Temperature threshold breached: 84°C (limit: 75°C)",
|
||||
"2026-09-24T12:05:10Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T12:05:10Z INFO [backup] Backup status cache refreshed",
|
||||
"2026-09-24T12:05:15Z WARN [api] Unauthorized request to /api/stacks/nextcloud from 172.18.0.10:33128",
|
||||
"2026-09-24T12:05:16Z INFO [stacks] update nextcloud: phase verifying",
|
||||
"2026-09-24T12:05:19Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:21Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:26Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:31Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:34Z INFO [bootrecon] \"gokapi\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T10:37:48Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T12:05:34Z INFO [bootrecon] \"chaosoom\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T11:48:01Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T12:05:36Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:41Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:46Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:51Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:05:56Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:02Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:07Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:12Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:17Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:22Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:27Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:32Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:37Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:42Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:47Z WARN Health probe nextcloud: API GET :8999/status.php → Get \"http://nextcloud:8999/status.php\": dial tcp 172.18.0.2:8999: connect: connection refused",
|
||||
"2026-09-24T12:06:47Z ERROR [stacks] update nextcloud FAILED after the new version was started: not healthy: not healthy within 1m30s (last: health check failing)",
|
||||
"2026-09-24T12:06:47Z INFO [stacks] update nextcloud: kept 13773 bytes of the app's own log at /opt/docker/stacks/nextcloud/hold-logs/20260924T120647Z/compose-logs.txt before stopping it (R-621)",
|
||||
"2026-09-24T12:06:47Z INFO [stacks] update nextcloud: phase undoing",
|
||||
"2026-09-24T12:06:47Z WARN [stacks] update nextcloud: UNDO — putting back the previous version and its 3 volume copy(ies) (reason: not healthy: not healthy within 1m30s (last: health check failing))",
|
||||
"2026-09-24T12:06:50Z ERROR [stacks] update nextcloud: the undo copy nextcloud_nextcloud_redis_data.pre-update-20260924T120426Z has no finished-marker — it is cut off or missing; NOTHING is put back",
|
||||
"2026-09-24T12:06:50Z ERROR [stacks] update nextcloud: the UNDO failed too (untouched) — HOLDING the app; the undo copies are kept: [{nextcloud_nextcloud_db_data nextcloud_nextcloud_db_data.pre-update-20260924T120426Z} {nextcloud_nextcloud_html nextcloud_nextcloud_html.pre-update-20260924T120426Z} {nextcloud_nextcloud_redis_da",
|
||||
"2026-09-24T12:06:50Z WARN [settings] restore hold SET for nextcloud — the app stays stopped until it is cleared",
|
||||
"2026-09-24T12:06:50Z WARN [backup] nextcloud is HELD STOPPED after a failed update (restore point: tier 2 \"második meghajtó\", 2026-09-24T11:04:21Z; holds: \"a beállításokat, az adatbázist és a fájlokat tartalmazza\"; undo: \"untouched\")",
|
||||
"2026-09-24T12:06:50Z WARN [settings] restore hold SET for nextcloud — the app stays stopped until it is cleared",
|
||||
"2026-09-24T12:06:50Z INFO [stacks] update nextcloud: event app_update_held (hold recorded: true)",
|
||||
"2026-09-24T12:06:52Z INFO [sync] Updated nextcloud/.felhom.yml",
|
||||
"2026-09-24T12:06:52Z INFO [api] Catalog sync completed: Sablonok frissítve — frissítve: nextcloud",
|
||||
"2026-09-24T12:06:56Z WARN [web] Tier-2 WHOLE restore requested (async, files + database): stack=nextcloud from 172.18.0.10:33128",
|
||||
"2026-09-24T12:06:56Z WARN [backup] WHOLE restore for nextcloud from the second drive /mnt/sys_drive/felhom-data/backups/secondary/nextcloud: files by the four rules (never delete, never overwrite newer), then the unit",
|
||||
"2026-09-24T12:06:56Z INFO [stacks] Stopping stack: nextcloud",
|
||||
"2026-09-24T12:06:56Z INFO [stacks] Stack nextcloud stopped successfully (took 0.1s)",
|
||||
"2026-09-24T12:06:57Z INFO [backup] whole restore nextcloud: files restored=0 replaced=0 (live kept beside as *.felhom-20260924T120656Z) kept-newer=0 unchanged=142",
|
||||
"2026-09-24T12:06:57Z INFO [backup] Restoring nextcloud from recovery unit /mnt/sys_drive/felhom-data/backups/secondary/nextcloud/recovery-unit: images=3, secrets recovered=3/3, data_keys=0",
|
||||
"2026-09-24T12:06:57Z INFO [stacks] Stopping stack: nextcloud",
|
||||
"2026-09-24T12:06:57Z INFO [stacks] Stack nextcloud stopped successfully (took 0.1s)",
|
||||
"2026-09-24T12:06:57Z INFO [backup] Restoring Docker volume nextcloud_nextcloud_db_data for nextcloud",
|
||||
"2026-09-24T12:06:58Z INFO [backup] Restoring Docker volume nextcloud_nextcloud_html for nextcloud",
|
||||
"2026-09-24T12:07:07Z INFO [backup] Restoring Docker volume nextcloud_nextcloud_redis_data for nextcloud",
|
||||
"2026-09-24T12:07:07Z INFO [backup] Restored 3 Docker volume(s) for nextcloud",
|
||||
"2026-09-24T12:07:07Z INFO [stacks] Redeploying nextcloud from recovery unit with 7 env vars",
|
||||
"2026-09-24T12:07:07Z INFO [stacks] pin nextcloud: nextcloud=nextcloud:34.0.4-apache, nextcloud-db=mariadb:12.3, nextcloud-redis=redis:7-alpine",
|
||||
"2026-09-24T12:07:07Z INFO [stacks] Starting stack nextcloud services only: [nextcloud-db]",
|
||||
"2026-09-24T12:07:07Z INFO [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/nextcloud not mounted — skipping ensure (held by drive gate)",
|
||||
"2026-09-24T12:07:08Z INFO [stacks] Stack nextcloud services [nextcloud-db] started (took 0.4s)",
|
||||
"2026-09-24T12:07:08Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T12:07:08Z INFO [backup] Restore nextcloud: replaying DB dump into nextcloud-db (mariadb)",
|
||||
"2026-09-24T12:07:17Z INFO [backup] Imported DB dump nextcloud-mariadb.sql into nextcloud-db (mariadb)",
|
||||
"2026-09-24T12:07:17Z INFO [backup] Restore nextcloud: replayed 1 DB dump(s)",
|
||||
"2026-09-24T12:07:17Z INFO [stacks] Starting stack: nextcloud",
|
||||
"2026-09-24T12:07:17Z INFO [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/nextcloud not mounted — skipping ensure (held by drive gate)",
|
||||
"2026-09-24T12:07:19Z WARN Health probe nextcloud: API GET :80/status.php → Get \"http://nextcloud-db:80/status.php\": dial tcp: lookup nextcloud-db on 127.0.0.11:53: no such host",
|
||||
"2026-09-24T12:07:23Z INFO [stacks] Stack nextcloud started successfully (took 6.2s)",
|
||||
"2026-09-24T12:07:23Z INFO [stacks] installed-images nextcloud: recorded 3 service(s) (nextcloud=nextcloud:34.0.4-apache (sha256:a5ace30c695a…), nextcloud-db=mariadb:12.3 (sha256:805c8e104bd5…), nextcloud-redis=redis:7-alpine (sha256:c35af3bbcef5…))",
|
||||
"2026-09-24T12:07:26Z INFO [stacks] Stack nextcloud post-start status:",
|
||||
"2026-09-24T12:07:26Z INFO [stacks] nextcloud nextcloud:34.0.4-apache@sha256:a5ace30c695afe48c2c406e940ee7886a81e13fa382e57cd68b2416d1a66914c running Up 3 seconds (health: starting)",
|
||||
"2026-09-24T12:07:26Z INFO [stacks] nextcloud-db mariadb:12.3@sha256:805c8e104bd563d5bfa24fadd3f31cd419ea859cb5277f32b5dbf2db714f9ed1 running Up 18 seconds (healthy)",
|
||||
"2026-09-24T12:07:26Z INFO [stacks] nextcloud-redis redis:7-alpine@sha256:c35af3bbcef51a62c8bae5a9a563c6f1b60d7ebaea4cb5a3ccbcc157580ae098 running Up 9 seconds (healthy)",
|
||||
"2026-09-24T12:07:31Z INFO [backup] Restore-from-unit completed: nextcloud — 3 volume(s) of 3 listed, 1 database(s) of 1 listed",
|
||||
"2026-09-24T12:07:31Z INFO [settings] restore hold CLEARED for nextcloud",
|
||||
"2026-09-24T12:07:31Z INFO [backup] nextcloud: restore completed — the update hold (set 2026-09-24T12:06:50Z) is CLEARED",
|
||||
"2026-09-24T12:07:31Z INFO [backup] nextcloud: primary unit already carries data — left untouched (R-403 never overwrites a richer package with a poorer one)",
|
||||
"2026-09-24T12:07:31Z INFO [web] Tier-2 whole restore completed (async): stack=nextcloud in 35.07797221s (files restored 0, replaced 0, kept-newer 0, unchanged 142; volumes 3/3, dbs 1/1)"
|
||||
],
|
||||
"undo_copies_left": "9"
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
14:04:09 ==== ROUND 3: cutoff_undo_file_app on nextcloud x power_cut (2026-09-24T12:04:09Z)
|
||||
14:04:10 drill: nextcloud: failing step redis:7-alpine -> redis:7.4.0-alpine + probe 8999
|
||||
14:04:20 [sync] the badge needed 10.3s and 2 sync+rescan rounds to catch up to redis:7.4.0-alpine — R-607's window, measured
|
||||
14:04:21 Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
|
||||
14:04:21 + 11.7s phase=safety-dump
|
||||
14:04:23 + 14.4s phase=pulling
|
||||
14:04:24 + 15.4s phase=copying
|
||||
14:04:34 + 25.4s phase=starting
|
||||
14:04:41 + 31.7s phase=verifying
|
||||
14:04:45 >>> finished-marker removed from the NEWEST undo copy:
|
||||
copy: nextcloud_nextcloud_redis_data.pre-update-20260924T120426Z
|
||||
data
|
||||
|
||||
14:04:45 >>> ARMED accident power_cut (at verifying)
|
||||
14:06:47 + 158.4s phase=undoing
|
||||
14:06:50 + 161.5s phase=failed
|
||||
14:06:50 + 161.6s nextcloud: deployed=True state=stopped updating=False phase=failed hold=update_failed
|
||||
14:06:51 drill: nextcloud: back to redis:7-alpine and its real probe
|
||||
14:06:56 whole restore (the second drive) -> 302
|
||||
14:07:33 whole restore: {'op': 'tier2-whole-restore', 'stack': 'nextcloud', 'ok': True, 'message': 'A(z) nextcloud: 3 adatkötet és az adatbázis visszaállítva — az alkalmazás újraindult. A meghajtó fájljai: 0 visszahozva, 0 kicserélve (a régebbi élő példány megmaradt mellette, .felhom-… végződéssel), 0 újabb példány érintet
|
||||
14:07:33 + 203.7s nextcloud: deployed=True state=running updating=False phase=None hold=None
|
||||
14:07:33 >>> accident done: {'kind': 'power_cut', 'cmd': 'pct stop 9202; pct start 9202', 'fired_at': '14:04:51', 'result': 'stop_rc=0 start_rc=0 '}
|
||||
14:07:33 + 203.9s nextcloud: deployed=True state=running updating=False phase=None hold=None
|
||||
14:07:41 nextcloud: readback of the seeded user found=True
|
||||
14:07:42 nextcloud files read back: 2/2 (negative control http=404)
|
||||
@@ -0,0 +1,26 @@
|
||||
14:04:09 ==== ROUND 3: cutoff_undo_file_app on nextcloud x power_cut (2026-09-24T12:04:09Z)
|
||||
14:04:10 drill: nextcloud: failing step redis:7-alpine -> redis:7.4.0-alpine + probe 8999
|
||||
14:04:20 [sync] the badge needed 10.3s and 2 sync+rescan rounds to catch up to redis:7.4.0-alpine — R-607's window, measured
|
||||
14:04:21 Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
|
||||
14:04:21 + 11.7s phase=safety-dump
|
||||
14:04:23 + 14.4s phase=pulling
|
||||
14:04:24 + 15.4s phase=copying
|
||||
14:04:34 + 25.4s phase=starting
|
||||
14:04:41 + 31.7s phase=verifying
|
||||
14:04:45 >>> finished-marker removed from the NEWEST undo copy:
|
||||
copy: nextcloud_nextcloud_redis_data.pre-update-20260924T120426Z
|
||||
data
|
||||
|
||||
14:04:45 >>> ARMED accident power_cut (at verifying)
|
||||
14:06:47 + 158.4s phase=undoing
|
||||
14:06:50 + 161.5s phase=failed
|
||||
14:06:50 + 161.6s nextcloud: deployed=True state=stopped updating=False phase=failed hold=update_failed
|
||||
14:06:51 drill: nextcloud: back to redis:7-alpine and its real probe
|
||||
14:06:56 whole restore (the second drive) -> 302
|
||||
14:07:33 whole restore: {'op': 'tier2-whole-restore', 'stack': 'nextcloud', 'ok': True, 'message': 'A(z) nextcloud: 3 adatkötet és az adatbázis visszaállítva — az alkalmazás újraindult. A meghajtó fájljai: 0 visszahozva, 0 kicserélve (a régebbi élő példány megmaradt mellette, .felhom-… végződéssel), 0 újabb példány érintet
|
||||
14:07:33 + 203.7s nextcloud: deployed=True state=running updating=False phase=None hold=None
|
||||
14:07:33 >>> accident done: {'kind': 'power_cut', 'cmd': 'pct stop 9202; pct start 9202', 'fired_at': '14:04:51', 'result': 'stop_rc=0 start_rc=0 '}
|
||||
14:07:33 + 203.9s nextcloud: deployed=True state=running updating=False phase=None hold=None
|
||||
14:07:41 nextcloud: readback of the seeded user found=True
|
||||
14:07:42 nextcloud files read back: 2/2 (negative control http=404)
|
||||
14:07:49 ==== ROUND 3 END: steady in 203.9s; readback={'A': True, 'files': ({'felhom-seed-0-e19728.txt': True, 'felhom-seed-2-8620d3.txt': True}, '404')}; events=[]
|
||||
@@ -0,0 +1,512 @@
|
||||
2026/09/24 12:08:51 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.10:33128 (X-Forwarded-For: 192.168.0.180)
|
||||
2026/09/24 12:08:51 auth.go:202: [DEBUG] [web] login successful from 192.168.0.180, creating session
|
||||
2026/09/24 12:08:51 auth.go:268: [DEBUG] [web] session created, expires=2026-10-01T12:08:51Z, active_sessions=3
|
||||
2026/09/24 12:08:51 auth.go:222: [INFO] [web] Login from 172.18.0.10:33128
|
||||
2026/09/24 12:08:51 server.go:545: [DEBUG] [web] ServeHTTP: GET / from 172.18.0.10:33128
|
||||
2026/09/24 12:08:51 server.go:545: [DEBUG] [web] ServeHTTP: GET /launcher from 172.18.0.10:33128
|
||||
2026/09/24 12:08:51 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/wishlist from 172.18.0.10:33128
|
||||
2026/09/24 12:08:52 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/wishlist from 172.18.0.10:33128
|
||||
2026/09/24 12:08:52 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/wishlist from 172.18.0.10:33128
|
||||
2026/09/24 12:08:52 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/wishlist from 172.18.0.10:33128
|
||||
2026/09/24 12:08:53 router.go:1065: [INFO] [api] Manual catalog sync requested
|
||||
2026/09/24 12:08:53 sync.go:208: [INFO] [sync] Starting catalog sync
|
||||
2026/09/24 12:08:53 sync.go:296: [INFO] [sync] Pulling latest from https://gitea.dooplex.hu/admin/app-catalog-drill.git (branch: main)
|
||||
2026/09/24 12:08:53 sync.go:298: [DEBUG] [sync] git fetch --depth 1 origin main in /opt/docker/felhom-controller/data/catalog-cache
|
||||
2026/09/24 12:08:53 sync.go:627: [DEBUG] [sync] Running: git fetch --depth 1 origin main
|
||||
2026/09/24 12:08:53 sync.go:627: [DEBUG] [sync] Running: git reset --hard origin/main
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] actualbudget/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] actualbudget/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] adventurelog/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] adventurelog/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] audiobookshelf/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] audiobookshelf/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] bentopdf/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] bentopdf/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] bookstack/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] bookstack/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] calcom/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] calcom/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] calibre-web/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] calibre-web/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] chaoscrash/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] chaoscrash/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] chaosoom/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] chaosoom/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] chaosoomb/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] chaosoomb/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] claper/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] claper/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] code-server/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] code-server/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] crafty-controller/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] crafty-controller/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] docmost/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] docmost/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] emby/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] emby/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] ghost/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] ghost/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] gitea/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] gitea/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] glance/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] glance/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] gokapi/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] gokapi/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] grafana/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] grafana/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] gramps-web/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] gramps-web/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] home-assistant/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] home-assistant/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] homebox/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] homebox/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] homepage/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] homepage/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] immich/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] immich/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] jellyfin/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] jellyfin/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] kimai/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] kimai/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] komga/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] komga/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] mealie/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] mealie/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:533: [DEBUG] [sync] n8n: catalog has moved past the pin — rendering the stored applied definition
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] n8n/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] n8n/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] navidrome/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] navidrome/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] nextcloud/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] nextcloud/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] onlyoffice/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] onlyoffice/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] opengist/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] opengist/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] outline/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] outline/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] paperless-ngx/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] paperless-ngx/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] papra/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] papra/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] plant-it/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] plant-it/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] plex/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] plex/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] privatebin/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] privatebin/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] radarr/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] radarr/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] rallly/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] rallly/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] recipe-importer/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] recipe-importer/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] romm/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] romm/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] seerr/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] seerr/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] sonarr/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] sonarr/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] sparkyfitness/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] sparkyfitness/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] tandoor/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] tandoor/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] termix/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] termix/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] uptime-kuma/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] uptime-kuma/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] vaultwarden/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] vaultwarden/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:533: [DEBUG] [sync] vikunja: catalog has moved past the pin — rendering the stored applied definition
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] vikunja/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] vikunja/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] wanderer/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] wanderer/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] wger/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] wger/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:533: [DEBUG] [sync] wishlist: catalog has moved past the pin — rendering the stored applied definition
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] wishlist/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:416: [INFO] [sync] Updated wishlist/.felhom.yml
|
||||
2026/09/24 12:08:53 sync.go:565: [DEBUG] [sync] wishlist/.felhom.yml: src=cb6beaf058c0066c, dst=cb6beaf058c0066c (changed)
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] zipline/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 sync.go:440: [DEBUG] [sync] zipline/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=true composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:08:53 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:08:53 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:08:53 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (10 deployed, 48 available)
|
||||
2026/09/24 12:08:53 sync.go:244: [DEBUG] [sync] Post-sync hook: triggering missing field injection for 1 stack(s): [wishlist]
|
||||
2026/09/24 12:08:53 deploy.go:1104: [DEBUG] [stacks] InjectMissingFields: checking 1 stacks
|
||||
2026/09/24 12:08:53 deploy.go:1126: [DEBUG] [stacks] InjectMissingFields: checking stack wishlist — 2 deploy fields, 2 existing env vars
|
||||
2026/09/24 12:08:53 deploy.go:1189: [INFO] [stacks] InjectMissingFields: processed 1 stacks
|
||||
2026/09/24 12:08:53 sync.go:263: [INFO] [sync] Catalog sync complete
|
||||
2026/09/24 12:08:53 router.go:1071: [INFO] [api] Catalog sync completed: Sablonok frissítve — frissítve: wishlist
|
||||
2026/09/24 12:08:55 router.go:362: [INFO] [api] Manual stack rescan requested
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=true composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:08:55 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:08:55 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:08:55 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (10 deployed, 48 available)
|
||||
2026/09/24 12:08:55 router.go:369: [INFO] [api] Stack rescan completed: 58 stacks found
|
||||
2026/09/24 12:08:57 router.go:591: [INFO] [api] update requested for stack: wishlist
|
||||
2026/09/24 12:08:57 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5427MB avail≈20471MB
|
||||
2026/09/24 12:08:57 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24277336 → total=25898MB avail=20471MB used=5427MB (21.0%)
|
||||
2026/09/24 12:08:58 deploy.go:1250: [INFO] [stacks] Memory check: total=25898MB, reserved=384MB, usable=25514MB, committed_used=1698MB, new_req=120MB, remaining=23696MB
|
||||
2026/09/24 12:08:58 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=25.5 GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:08:58 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5446MB avail≈20452MB
|
||||
2026/09/24 12:08:58 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24255092 → total=25898MB avail=20452MB used=5446MB (21.0%)
|
||||
2026/09/24 12:08:58 deploy.go:1250: [INFO] [stacks] Memory check: total=25898MB, reserved=384MB, usable=25514MB, committed_used=1698MB, new_req=120MB, remaining=23696MB
|
||||
2026/09/24 12:08:58 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=25.5 GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:08:58 update.go:512: [INFO] [stacks] update wishlist: accepted — guarded update started
|
||||
2026/09/24 12:08:58 update.go:1260: [INFO] [stacks] update wishlist: phase checking
|
||||
2026/09/24 12:08:58 update.go:762: [INFO] [stacks] update wishlist: ladder — the installed version wishlist=ghcr.io/cmintey/wishlist:v0.67.1 matches no update_ladder entry (1 entries) — an app older than the ladder has no record to climb; the catalog's current definition
|
||||
2026/09/24 12:08:58 update.go:777: [INFO] [stacks] update wishlist: no usable copy on any tier — younger than 1m0s and not older than this install's deploy (2026-09-24T11:14:25Z) (found: Tier 2 (second drive) at 2026-09-24T11:18:44Z (50m0s old); Tier 1 (own recovery unit) at 2026-09-24T11:20:55Z (48m0s old)) — backing up first
|
||||
2026/09/24 12:08:58 update.go:1260: [INFO] [stacks] update wishlist: phase backing-up
|
||||
2026/09/24 12:08:58 update_guard.go:360: [INFO] [backup] update pre-backup for wishlist: starting (DB dump → volume dump → unit capture → Tier 2)
|
||||
2026/09/24 12:08:58 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=25.5 GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:08:58 dbdump.go:130: [DEBUG] DiscoverDatabases: running docker ps to find database containers
|
||||
2026/09/24 12:08:58 dbdump.go:149: [DEBUG] DiscoverDatabases: docker ps output: 7a34056c6ac0 nextcloud nextcloud nextcloud:34.0.4-apache
|
||||
3a9300356092 nextcloud-redis nextcloud redis:7-alpine
|
||||
a2b3dc9582ee nextcloud-db nextcloud mariadb:12.3
|
||||
115834f20aff felhom-controller gitea.dooplex.hu/admin/felhom-controller:0.269.1
|
||||
49227c9e347d n8n n8n n8nio/n8n:2.31.3
|
||||
557bdb05d3bd vikunja vikunja vikunja/vikunja:2.3.0
|
||||
8ed284296786 romm-db romm mariadb:11.8
|
||||
0a82332f8e1c romm romm rommapp/romm:5.3.1
|
||||
9ec77cdb422a romm-redis romm redis:7-alpine
|
||||
d9846695ae0d wishlist wishlist ghcr.io/cminte...
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud (image=nextcloud:34.0.4-apache, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: nextcloud-db (id=a2b3dc9582ee)
|
||||
2026/09/24 12:08:58 dbdump.go:198: [DEBUG] DiscoverDatabases: nextcloud-db → stack=nextcloud, dbUser=root, dbName=nextcloud
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.269.1, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container n8n (image=n8nio/n8n:2.31.3, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container vikunja (image=vikunja/vikunja:2.3.0, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: romm-db (id=8ed284296786)
|
||||
2026/09/24 12:08:58 dbdump.go:198: [DEBUG] DiscoverDatabases: romm-db → stack=romm, dbUser=root, dbName=romm
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm (image=rommapp/romm:5.3.1, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container wishlist (image=ghcr.io/cmintey/wishlist:v0.67.1, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container privatebin (image=privatebin/pdo:2.0.6, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-webserver (image=ghcr.io/paperless-ngx/paperless-ngx:2.20.15, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:178: [DEBUG] DiscoverDatabases: found postgres container: paperless-postgres (id=5da8830bc973)
|
||||
2026/09/24 12:08:58 dbdump.go:896: [DEBUG] DiscoverDatabases: paperless-postgres → stack "paperless-ngx" from the compose project label (the container name would have given "paperless")
|
||||
2026/09/24 12:08:58 dbdump.go:198: [DEBUG] DiscoverDatabases: paperless-postgres → stack=paperless-ngx, dbUser=paperless, dbName=paperless
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container navidrome (image=deluan/navidrome:0.64.1, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
|
||||
2026/09/24 12:08:58 dbdump.go:205: [DEBUG] DiscoverDatabases: found 3 database(s), skipped 14 non-DB container(s)
|
||||
2026/09/24 12:08:58 dbdump.go:208: [INFO] [backup] Discovered 3 databases
|
||||
2026/09/24 12:08:58 backup.go:920: [INFO] [backup] Stopping wishlist for safe volume dump
|
||||
2026/09/24 12:08:58 manager.go:1283: [DEBUG] [stacks] StopStack wishlist: current state=running deployed=true containers=1
|
||||
2026/09/24 12:08:58 manager.go:1286: [INFO] [stacks] Stopping stack: wishlist
|
||||
2026/09/24 12:08:58 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:08:58 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:08:58 manager.go:1483: [DEBUG] Command completed: docker compose down (took 0.4s)
|
||||
2026/09/24 12:08:58 manager.go:1295: [INFO] [stacks] Stack wishlist stopped successfully (took 0.4s)
|
||||
2026/09/24 12:08:58 backup.go:796: [DEBUG] [backup] Dumping volume wishlist_wishlist_data for wishlist
|
||||
2026/09/24 12:08:59 backup.go:821: [INFO] [backup] Volume dump: wishlist/wishlist_wishlist_data → 302.0 KB
|
||||
2026/09/24 12:08:59 backup.go:796: [DEBUG] [backup] Dumping volume wishlist_wishlist_uploads for wishlist
|
||||
2026/09/24 12:08:59 backup.go:821: [INFO] [backup] Volume dump: wishlist/wishlist_wishlist_uploads → 1.5 KB
|
||||
2026/09/24 12:08:59 backup.go:930: [INFO] [backup] Restarting wishlist after volume dump
|
||||
2026/09/24 12:08:59 manager.go:1194: [DEBUG] [stacks] StartStack wishlist: current state=stopped deployed=true
|
||||
2026/09/24 12:08:59 manager.go:1197: [INFO] [stacks] Starting stack: wishlist
|
||||
2026/09/24 12:08:59 manager.go:1204: [DEBUG] [stacks] StartStack wishlist: prepared 8 env vars for compose
|
||||
2026/09/24 12:08:59 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:08:59 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:08:59 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:08:59 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:08:59 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 3m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:08:59 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 3m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:08:59 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 3m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:08:59 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 3m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:08:59 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:08:59 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 3m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:08:59 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:08:59 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:08:59 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:08:59 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.4s)
|
||||
2026/09/24 12:08:59 manager.go:1212: [INFO] [stacks] Stack wishlist started successfully (took 0.4s)
|
||||
2026/09/24 12:09:00 installed.go:409: [DEBUG] [stacks] installed-images wishlist: unchanged (1 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:09:00 update_guard.go:410: [INFO] [backup] update pre-backup for wishlist: volume dump OK
|
||||
2026/09/24 12:09:00 recovery_unit.go:224: [INFO] [backup] Recovery unit captured for wishlist → /mnt/sys_drive/felhom-data/backups/primary/wishlist (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)
|
||||
2026/09/24 12:09:00 update_guard.go:416: [INFO] [backup] update pre-backup for wishlist: recovery unit captured (0 database dump(s))
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:00 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (18154 bytes)
|
||||
2026/09/24 12:09:00 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:09:00 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event crossdrive_completed (severity info) — further crossdrive_completed events are logged at DEBUG only
|
||||
2026/09/24 12:09:00 tier2.go:425: [INFO] [backup] Tier 2 copied wishlist → /mnt/felhom-drives/scratch_hdd/backups/secondary/wishlist (323.7 KB, 0 leg(s), 0s)
|
||||
2026/09/24 12:09:00 update_guard.go:425: [INFO] [backup] update pre-backup for wishlist: complete in 2.015s
|
||||
2026/09/24 12:09:00 update.go:792: [INFO] [stacks] update wishlist: precondition met after the backup — Tier 2 (second drive) copy from 2026-09-24T12:09:00Z
|
||||
2026/09/24 12:09:00 update.go:1260: [INFO] [stacks] update wishlist: phase safety-dump
|
||||
2026/09/24 12:09:00 dbdump.go:130: [DEBUG] DiscoverDatabases: running docker ps to find database containers
|
||||
2026/09/24 12:09:00 dbdump.go:149: [DEBUG] DiscoverDatabases: docker ps output: 08ac8b284e25 wishlist wishlist ghcr.io/cmintey/wishlist:v0.67.1
|
||||
7a34056c6ac0 nextcloud nextcloud nextcloud:34.0.4-apache
|
||||
3a9300356092 nextcloud-redis nextcloud redis:7-alpine
|
||||
a2b3dc9582ee nextcloud-db nextcloud mariadb:12.3
|
||||
115834f20aff felhom-controller gitea.dooplex.hu/admin/felhom-controller:0.269.1
|
||||
49227c9e347d n8n n8n n8nio/n8n:2.31.3
|
||||
557bdb05d3bd vikunja vikunja vikunja/vikunja:2.3.0
|
||||
8ed284296786 romm-db romm mariadb:11.8
|
||||
0a82332f8e1c romm romm rommapp/romm:5.3.1
|
||||
9ec77cdb422a romm-redis r...
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container wishlist (image=ghcr.io/cmintey/wishlist:v0.67.1, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud (image=nextcloud:34.0.4-apache, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: nextcloud-db (id=a2b3dc9582ee)
|
||||
2026/09/24 12:09:00 dbdump.go:198: [DEBUG] DiscoverDatabases: nextcloud-db → stack=nextcloud, dbUser=root, dbName=nextcloud
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.269.1, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container n8n (image=n8nio/n8n:2.31.3, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container vikunja (image=vikunja/vikunja:2.3.0, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: romm-db (id=8ed284296786)
|
||||
2026/09/24 12:09:00 dbdump.go:198: [DEBUG] DiscoverDatabases: romm-db → stack=romm, dbUser=root, dbName=romm
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm (image=rommapp/romm:5.3.1, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container privatebin (image=privatebin/pdo:2.0.6, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-webserver (image=ghcr.io/paperless-ngx/paperless-ngx:2.20.15, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:178: [DEBUG] DiscoverDatabases: found postgres container: paperless-postgres (id=5da8830bc973)
|
||||
2026/09/24 12:09:00 dbdump.go:896: [DEBUG] DiscoverDatabases: paperless-postgres → stack "paperless-ngx" from the compose project label (the container name would have given "paperless")
|
||||
2026/09/24 12:09:00 dbdump.go:198: [DEBUG] DiscoverDatabases: paperless-postgres → stack=paperless-ngx, dbUser=paperless, dbName=paperless
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container navidrome (image=deluan/navidrome:0.64.1, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
|
||||
2026/09/24 12:09:00 dbdump.go:205: [DEBUG] DiscoverDatabases: found 3 database(s), skipped 14 non-DB container(s)
|
||||
2026/09/24 12:09:00 dbdump.go:208: [INFO] [backup] Discovered 3 databases
|
||||
2026/09/24 12:09:00 update_guard.go:476: [INFO] [backup] update safety dump for wishlist: the app has no database — nothing to copy (no-op)
|
||||
2026/09/24 12:09:00 update.go:807: [INFO] [stacks] update wishlist: safety dump done (0 file(s)) []
|
||||
2026/09/24 12:09:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=25.5 GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:09:01 undo.go:273: [INFO] [stacks] update wishlist: the undo copy will hold 2 named volume(s), 0.3 MiB
|
||||
2026/09/24 12:09:01 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/wishlist — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:09:01 [INFO] [stacks] SaveAppConfig: saved config for wishlist
|
||||
2026/09/24 12:09:01 update.go:1260: [INFO] [stacks] update wishlist: phase pinning
|
||||
2026/09/24 12:09:01 pin.go:373: [INFO] [stacks] update wishlist: pin advanced to /opt/docker/felhom-controller/data/catalog-cache/templates/wishlist/docker-compose.yml (wishlist=ghcr.io/cmintey/wishlist:latest)
|
||||
2026/09/24 12:09:01 update.go:1260: [INFO] [stacks] update wishlist: phase pulling
|
||||
2026/09/24 12:09:01 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:09:01 manager.go:1463: [DEBUG] Running: docker compose pull (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:09:02 manager.go:1483: [DEBUG] Command completed: docker compose pull (took 0.9s)
|
||||
2026/09/24 12:09:02 update.go:1260: [INFO] [stacks] update wishlist: phase copying
|
||||
2026/09/24 12:09:02 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:09:02 manager.go:1463: [DEBUG] Running: docker compose stop (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:09:03 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:09:03 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:09:03 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.1s)
|
||||
2026/09/24 12:09:03 manager.go:1543: [INFO] [stacks] Stack wishlist post-start status:
|
||||
2026/09/24 12:09:03 manager.go:1546: [INFO] [stacks] wishlist ghcr.io/cmintey/wishlist:v0.67.1@sha256:4b89bfb5b57ffb087c33978d21b09048e5c37f4506326e9ccd2705a0a1d86548 running Up 3 seconds (health: starting)
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5590MB avail≈20308MB
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24083552 → total=25898MB avail=20308MB used=5590MB (21.6%)
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=25.5GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readLoadAvg: raw="2.63 3.61 3.30 8/1545 2224" → 1m=2.63 5m=3.61 15m=3.30
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 69.8°C (hwmon2)
|
||||
2026/09/24 12:09:09 info.go:13: [DEBUG] [system] GetInfo done in 71ms — mem=5590MB/25898MB (21.6%), rootDisk=25.5GB/68.4GB (37.3%), load=2.63/3.61/3.30, temp=69.8°C (hwmon2), cpu=47.0%
|
||||
2026/09/24 12:09:09 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:09:09 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:09:09 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:09:09 scheduler.go:346: [INFO] [scheduler] Running job: stack-scan
|
||||
2026/09/24 12:09:09 scheduler.go:67: [DEBUG] [scheduler] job stack-scan: execution starting
|
||||
2026/09/24 12:09:09 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 3m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 3m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 3m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 3m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:09:09 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 3m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:09:09 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=true composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:09:09 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:09:09 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:09:09 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (10 deployed, 48 available)
|
||||
2026/09/24 12:09:09 scheduler.go:363: [INFO] [scheduler] Job stack-scan completed (took 108ms)
|
||||
2026/09/24 12:09:12 manager.go:1483: [DEBUG] Command completed: docker compose stop (took 10.4s)
|
||||
2026/09/24 12:09:12 update.go:1260: [INFO] [stacks] update wishlist: phase copying
|
||||
2026/09/24 12:09:12 undo.go:423: [INFO] [stacks] update wishlist: copied wishlist_wishlist_data → wishlist_wishlist_data.pre-update-20260924T120912Z in 431ms
|
||||
2026/09/24 12:09:12 update.go:1260: [INFO] [stacks] update wishlist: phase copying
|
||||
2026/09/24 12:09:13 undo.go:423: [INFO] [stacks] update wishlist: copied wishlist_wishlist_uploads → wishlist_wishlist_uploads.pre-update-20260924T120912Z in 434ms
|
||||
2026/09/24 12:09:13 update.go:1260: [INFO] [stacks] update wishlist: phase starting
|
||||
2026/09/24 12:09:13 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:09:13 manager.go:1463: [DEBUG] Running: docker compose up -d --remove-orphans (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:09:13 manager.go:1483: [DEBUG] Command completed: docker compose up -d --remove-orphans (took 0.4s)
|
||||
2026/09/24 12:09:13 update.go:1260: [INFO] [stacks] update wishlist: phase verifying
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,196 @@
|
||||
{
|
||||
"round": 4,
|
||||
"action": "failing_step",
|
||||
"accident": {
|
||||
"kind": "controller_killed",
|
||||
"cmd": "kill -9 of the controller PID (1 of max 3)",
|
||||
"fired_at": "14:09:22",
|
||||
"result": "killed pid 2474 rc=0"
|
||||
},
|
||||
"app": "wishlist",
|
||||
"started": "2026-09-24T12:08:51Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "running",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 84°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 84°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"badge_catchup_s": 4.7,
|
||||
"act": "Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}",
|
||||
"armed_at": "14:09:13",
|
||||
"armed_why": "at verifying",
|
||||
"phases": [
|
||||
[
|
||||
6.1,
|
||||
"backing-up"
|
||||
],
|
||||
[
|
||||
8.2,
|
||||
"safety-dump"
|
||||
],
|
||||
[
|
||||
9.3,
|
||||
"pulling"
|
||||
],
|
||||
[
|
||||
10.3,
|
||||
"copying"
|
||||
],
|
||||
[
|
||||
21.4,
|
||||
"starting"
|
||||
],
|
||||
[
|
||||
21.9,
|
||||
"verifying"
|
||||
],
|
||||
[
|
||||
123.9,
|
||||
"undoing"
|
||||
],
|
||||
[
|
||||
141.8,
|
||||
"undone"
|
||||
]
|
||||
],
|
||||
"controller_back_s": 0.2,
|
||||
"time_to_steady_s": 147.7,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "running",
|
||||
"update_phase": "undone",
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 78°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"A(z) wishlist frissítése 2026-09-24 14:10-kor nem sikerült. A doboz automatikusan visszaállította az előző változatot és az adatokat — semmi nem veszett el.",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 78°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"The update of wishlist at 2026-09-24 14:10 did not succeed. The box put back the previous version and its data automatically — nothing was lost.",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"readback": {
|
||||
"A": true
|
||||
},
|
||||
"events": [],
|
||||
"box_log": [
|
||||
"2026-09-24T12:08:59Z INFO [stacks] Stack wishlist started successfully (took 0.4s)",
|
||||
"2026-09-24T12:09:00Z INFO [backup] update pre-backup for wishlist: volume dump OK",
|
||||
"2026-09-24T12:09:00Z INFO [backup] Recovery unit captured for wishlist → /mnt/sys_drive/felhom-data/backups/primary/wishlist (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)",
|
||||
"2026-09-24T12:09:00Z INFO [backup] update pre-backup for wishlist: recovery unit captured (0 database dump(s))",
|
||||
"2026-09-24T12:09:00Z INFO [backup] Tier 2 copied wishlist → /mnt/felhom-drives/scratch_hdd/backups/secondary/wishlist (323.7 KB, 0 leg(s), 0s)",
|
||||
"2026-09-24T12:09:00Z INFO [backup] update pre-backup for wishlist: complete in 2.015s",
|
||||
"2026-09-24T12:09:00Z INFO [stacks] update wishlist: precondition met after the backup — Tier 2 (second drive) copy from 2026-09-24T12:09:00Z",
|
||||
"2026-09-24T12:09:00Z INFO [stacks] update wishlist: phase safety-dump",
|
||||
"2026-09-24T12:09:00Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T12:09:00Z INFO [backup] update safety dump for wishlist: the app has no database — nothing to copy (no-op)",
|
||||
"2026-09-24T12:09:00Z INFO [stacks] update wishlist: safety dump done (0 file(s)) []",
|
||||
"2026-09-24T12:09:01Z INFO [stacks] update wishlist: the undo copy will hold 2 named volume(s), 0.3 MiB",
|
||||
"2026-09-24T12:09:01Z INFO [stacks] update wishlist: phase pinning",
|
||||
"2026-09-24T12:09:01Z INFO [stacks] update wishlist: pin advanced to /opt/docker/felhom-controller/data/catalog-cache/templates/wishlist/docker-compose.yml (wishlist=ghcr.io/cmintey/wishlist:latest)",
|
||||
"2026-09-24T12:09:01Z INFO [stacks] update wishlist: phase pulling",
|
||||
"2026-09-24T12:09:02Z INFO [stacks] update wishlist: phase copying",
|
||||
"2026-09-24T12:09:03Z INFO [stacks] Stack wishlist post-start status:",
|
||||
"2026-09-24T12:09:03Z INFO [stacks] wishlist ghcr.io/cmintey/wishlist:v0.67.1@sha256:4b89bfb5b57ffb087c33978d21b09048e5c37f4506326e9ccd2705a0a1d86548 running Up 3 seconds (health: starting)",
|
||||
"2026-09-24T12:09:24Z WARN [stacks] update recovery: wishlist was interrupted in verifying (started 2026-09-24T12:08:58Z) — the new version may have run; marking it Updating and RESUMING the health wait",
|
||||
"2026-09-24T12:09:24Z WARN [update] 1 interrupted update(s) will resume after the backup side is wired: [wishlist]",
|
||||
"2026-09-24T12:09:24Z INFO [backup] restore record wired: /opt/docker/felhom-controller/data/restore-status.json (interrupted at startup: false)",
|
||||
"2026-09-24T12:09:24Z INFO [scheduler] Registered periodic job: deadapp-check (every 30s)",
|
||||
"2026-09-24T12:09:24Z INFO [scheduler] Registered periodic job: backup-cache (every 5m0s)",
|
||||
"2026-09-24T12:09:24Z INFO [scheduler] Daily job tier2-backup scheduled for 2026-09-24 14:20 CEST",
|
||||
"2026-09-24T12:09:24Z INFO [scheduler] Daily job offbox-backup scheduled for 2026-09-24 15:05 CEST",
|
||||
"2026-09-24T12:09:24Z INFO [stacks] update wishlist: resuming after a controller restart — `up -d` then the health wait",
|
||||
"2026-09-24T12:09:24Z INFO [backup] Found 10 DB dump files across drives",
|
||||
"2026-09-24T12:09:24Z INFO [stacks] update wishlist: phase verifying",
|
||||
"2026-09-24T12:09:25Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:09:25Z WARN [monitor] Temperature threshold breached: 78°C (limit: 75°C)",
|
||||
"2026-09-24T12:09:25Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T12:09:25Z INFO [backup] nextcloud: pruned old undo copy pre-restore-20260924T104416Z-nextcloud-mariadb.sql (keeping the newest 3)",
|
||||
"2026-09-24T12:09:25Z INFO [backup] Recovery unit captured for nextcloud → /mnt/felhom-drives/scratch_hdd/userdata/nextcloud/backups/primary/nextcloud (images=3, secrets-referenced=3, data_keys=0, portable-carried=2/2, withheld=1)",
|
||||
"2026-09-24T12:09:25Z INFO [backup] Backup status cache refreshed",
|
||||
"2026-09-24T12:09:29Z WARN [api] Unauthorized request to /api/stacks/wishlist from 172.18.0.10:35772",
|
||||
"2026-09-24T12:09:30Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:09:35Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:09:40Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:09:45Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:09:49Z INFO [bootrecon] \"gokapi\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T10:37:48Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T12:09:49Z INFO [bootrecon] \"chaosoom\" is a boot orphan by intent but is HELD (held after a failed restore whose rollback also failed (2026-09-24T11:48:01Z) — clear the hold to start it) — NOT starting it; whatever is holding it owns its recovery",
|
||||
"2026-09-24T12:09:50Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:09:55Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:00Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:05Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:10Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:15Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:20Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:25Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:30Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:35Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:40Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:45Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:50Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:55Z WARN Health probe wishlist: HTTP GET :8999/ → Get \"http://wishlist:8999/\": dial tcp 172.18.0.5:8999: connect: connection refused",
|
||||
"2026-09-24T12:10:55Z ERROR [stacks] update wishlist FAILED after the new version was started: not healthy: not healthy within 1m30s (last: health check failing)",
|
||||
"2026-09-24T12:10:55Z INFO [stacks] update wishlist: kept 3084 bytes of the app's own log at /opt/docker/stacks/wishlist/hold-logs/20260924T121055Z/compose-logs.txt before stopping it (R-621)",
|
||||
"2026-09-24T12:10:55Z INFO [stacks] update wishlist: phase undoing",
|
||||
"2026-09-24T12:10:55Z WARN [stacks] update wishlist: UNDO — putting back the previous version and its 2 volume copy(ies) (reason: not healthy: not healthy within 1m30s (last: health check failing))",
|
||||
"2026-09-24T12:10:57Z INFO [stacks] pin wishlist: wishlist=ghcr.io/cmintey/wishlist:v0.67.1",
|
||||
"2026-09-24T12:11:13Z INFO [stacks] update wishlist: event app_update_undone",
|
||||
"2026-09-24T12:11:13Z WARN notifier disabled (no hub configured): DROPPED event app_update_undone (severity warning) — further app_update_undone events are logged at DEBUG only",
|
||||
"2026-09-24T12:11:13Z INFO [stacks] update wishlist: UNDONE in 18s — the previous version is running on the data from before the update (the app's health check passed)",
|
||||
"2026-09-24T12:11:15Z INFO [sync] Updated wishlist/.felhom.yml",
|
||||
"2026-09-24T12:11:15Z INFO [api] Catalog sync completed: Sablonok frissítve — frissítve: wishlist"
|
||||
],
|
||||
"undo_copies_left": "0"
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
14:08:51 ==== ROUND 4: failing_step on wishlist x controller_killed (2026-09-24T12:08:51Z)
|
||||
14:08:53 drill: wishlist: failing step ghcr.io/cmintey/wishlist:v0.67.1 -> ghcr.io/cmintey/wishlist:latest + probe 8999
|
||||
14:08:58 Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
|
||||
14:08:58 + 6.1s phase=backing-up
|
||||
14:09:00 + 8.2s phase=safety-dump
|
||||
14:09:01 + 9.3s phase=pulling
|
||||
14:09:02 + 10.3s phase=copying
|
||||
14:09:13 + 21.4s phase=starting
|
||||
14:09:13 + 21.9s phase=verifying
|
||||
14:09:13 >>> ARMED accident controller_killed (at verifying)
|
||||
14:10:55 + 123.9s phase=undoing
|
||||
14:11:13 + 141.8s phase=undone
|
||||
14:11:13 + 141.8s wishlist: deployed=True state=running updating=False phase=undone hold=None
|
||||
14:11:14 drill: wishlist: back to ghcr.io/cmintey/wishlist:v0.67.1 and its real probe
|
||||
14:11:19 >>> accident done: {'kind': 'controller_killed', 'cmd': 'kill -9 of the controller PID (1 of max 3)', 'fired_at': '14:09:22', 'result': 'killed pid 2474 rc=0'}
|
||||
14:11:19 + 147.7s wishlist: deployed=True state=running updating=False phase=undone hold=None
|
||||
14:11:20 wishlist: sign-in as the seeded user type=success ok=True (wrong password refused)
|
||||
@@ -0,0 +1,18 @@
|
||||
14:08:51 ==== ROUND 4: failing_step on wishlist x controller_killed (2026-09-24T12:08:51Z)
|
||||
14:08:53 drill: wishlist: failing step ghcr.io/cmintey/wishlist:v0.67.1 -> ghcr.io/cmintey/wishlist:latest + probe 8999
|
||||
14:08:58 Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
|
||||
14:08:58 + 6.1s phase=backing-up
|
||||
14:09:00 + 8.2s phase=safety-dump
|
||||
14:09:01 + 9.3s phase=pulling
|
||||
14:09:02 + 10.3s phase=copying
|
||||
14:09:13 + 21.4s phase=starting
|
||||
14:09:13 + 21.9s phase=verifying
|
||||
14:09:13 >>> ARMED accident controller_killed (at verifying)
|
||||
14:10:55 + 123.9s phase=undoing
|
||||
14:11:13 + 141.8s phase=undone
|
||||
14:11:13 + 141.8s wishlist: deployed=True state=running updating=False phase=undone hold=None
|
||||
14:11:14 drill: wishlist: back to ghcr.io/cmintey/wishlist:v0.67.1 and its real probe
|
||||
14:11:19 >>> accident done: {'kind': 'controller_killed', 'cmd': 'kill -9 of the controller PID (1 of max 3)', 'fired_at': '14:09:22', 'result': 'killed pid 2474 rc=0'}
|
||||
14:11:19 + 147.7s wishlist: deployed=True state=running updating=False phase=undone hold=None
|
||||
14:11:20 wishlist: sign-in as the seeded user type=success ok=True (wrong password refused)
|
||||
14:11:27 ==== ROUND 4 END: steady in 147.7s; readback={'A': True}; events=[]
|
||||
@@ -0,0 +1,127 @@
|
||||
2026/09/24 12:11:35 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.10:35772 (X-Forwarded-For: 192.168.0.180)
|
||||
2026/09/24 12:11:35 auth.go:202: [DEBUG] [web] login successful from 192.168.0.180, creating session
|
||||
2026/09/24 12:11:35 auth.go:268: [DEBUG] [web] session created, expires=2026-10-01T12:11:35Z, active_sessions=3
|
||||
2026/09/24 12:11:35 auth.go:222: [INFO] [web] Login from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 server.go:545: [DEBUG] [web] ServeHTTP: GET / from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 server.go:545: [DEBUG] [web] ServeHTTP: GET /launcher from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/gokapi from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/gokapi from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/gokapi from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/gokapi from 172.18.0.10:35772
|
||||
2026/09/24 12:11:35 router.go:907: [INFO] [api] Remove requested for stack: gokapi
|
||||
2026/09/24 12:11:35 delete.go:526: [DEBUG] [stacks] RemoveStack called: name="gokapi", removeHDDData=true, backupPathsToRemove=2
|
||||
2026/09/24 12:11:35 delete.go:540: [DEBUG] [stacks] RemoveStack gokapi: state=stopped, deployed=true, orphaned=false, deploying=false
|
||||
2026/09/24 12:11:35 delete.go:597: [INFO] Removing deployed stack: gokapi (removeHDDData=true, hddDeclared=false, backupPaths=2)
|
||||
2026/09/24 12:11:35 delete.go:609: [DEBUG] [stacks] RemoveStack gokapi: found 0 HDD mounts from compose file
|
||||
2026/09/24 12:11:35 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, GOKAPI_PASSWORD, SUBDOMAIN, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:11:35 manager.go:1463: [DEBUG] Running: docker compose down --volumes (in /opt/docker/stacks/gokapi)
|
||||
2026/09/24 12:11:36 manager.go:1483: [DEBUG] Command completed: docker compose down --volumes (took 0.1s)
|
||||
2026/09/24 12:11:36 delete.go:623: [DEBUG] [stacks] RemoveStack gokapi: compose down output:
|
||||
2026/09/24 12:11:44 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:11:44 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 32s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:44 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:11:44 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:11:44 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:11:54 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:11:54 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:11:54 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:11:54 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 42s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:11:54 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:11:54 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:11:54 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:12:02 delete.go:650: [INFO] [stacks] RemoveStack gokapi: removed volume(s) [gokapi_gokapi_config gokapi_gokapi_data]
|
||||
2026/09/24 12:12:02 delete.go:707: [DEBUG] [stacks] RemoveStack gokapi: processing 2 backup paths for removal (base=/mnt/sys_drive/felhom-data/backups)
|
||||
2026/09/24 12:12:02 delete.go:724: [INFO] Removed backup data: /mnt/sys_drive/felhom-data/backups/primary/gokapi (132K)
|
||||
2026/09/24 12:12:02 delete.go:732: [DEBUG] [stacks] RemoveStack gokapi: removing app.yaml at /opt/docker/stacks/gokapi/app.yaml
|
||||
2026/09/24 12:12:02 delete.go:749: [INFO] Stack gokapi removed successfully (took 26.6s)
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:12:02 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:12:02 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:12:02 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (9 deployed, 49 available)
|
||||
2026/09/24 12:12:02 r474_remove_mirrors.go:91: [INFO] [backup] remove gokapi: Tier-2 mirror deleted: /mnt/felhom-drives/scratch_hdd/backups/secondary/gokapi (126.8 KB)
|
||||
2026/09/24 12:12:02 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17657 bytes)
|
||||
2026/09/24 12:12:02 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:12:02 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_removed (severity info) — further app_removed events are logged at DEBUG only
|
||||
2026/09/24 12:12:02 lifecycle.go:176: [DEBUG] [integrations] OnStackRemove: stack=gokapi integrationsFound=0
|
||||
2026/09/24 12:12:04 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:12:04 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 52s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:12:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:12:04 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (8 skipped not due, 0 skipped no container)
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"round": 5,
|
||||
"action": "remove_held",
|
||||
"accident": "none",
|
||||
"app": "gokapi",
|
||||
"started": "2026-09-24T12:11:35Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "stopped",
|
||||
"update_phase": null,
|
||||
"hold_reason": "Az alkalmazást ismét leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). A Felhom ügyfélszolgálatát értesítettük. Az Indítás gombbal újra megpróbálhatod.",
|
||||
"hold_kind": "unhealthy_stop",
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 78°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az alkalmazást ismét leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). A Felhom ügyfélszolgálatát értesítettük. Az Indítás gombbal újra megpróbálhatod.",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 78°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"We stopped the app again because it kept crashing (or ran out of memory). Felhom support has been told. Press Start to try again.",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"held_before": {
|
||||
"deployed": true,
|
||||
"hold_kind": "unhealthy_stop",
|
||||
"hold_reason": "Az alkalmazást ismét leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). A Felhom ügyfélszolgálatát értesítettük. Az Indítás gombbal újra megpróbálhatod."
|
||||
},
|
||||
"act": "remove (data + backups) -> 200 {'ok': True, 'data': {'removed': 'gokapi', 'volumes_removed': ['gokapi_gokapi_config', 'gokapi_gokapi_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazás nem tárolt ",
|
||||
"time_to_steady_s": 26.8,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": false,
|
||||
"state": "not_deployed",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"leftovers": ""
|
||||
},
|
||||
"readback": null,
|
||||
"events": [
|
||||
"2026-09-24T12:12:02Z app_removed (info)"
|
||||
],
|
||||
"box_log": [
|
||||
"2026-09-24T12:11:35Z INFO [api] Remove requested for stack: gokapi",
|
||||
"2026-09-24T12:11:35Z INFO Removing deployed stack: gokapi (removeHDDData=true, hddDeclared=false, backupPaths=2)",
|
||||
"2026-09-24T12:12:02Z INFO [stacks] RemoveStack gokapi: removed volume(s) [gokapi_gokapi_config gokapi_gokapi_data]",
|
||||
"2026-09-24T12:12:02Z INFO Removed backup data: /mnt/sys_drive/felhom-data/backups/primary/gokapi (132K)",
|
||||
"2026-09-24T12:12:02Z INFO Stack gokapi removed successfully (took 26.6s)",
|
||||
"2026-09-24T12:12:02Z INFO [backup] remove gokapi: Tier-2 mirror deleted: /mnt/felhom-drives/scratch_hdd/backups/secondary/gokapi (126.8 KB)"
|
||||
],
|
||||
"undo_copies_left": "0"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
14:11:35 ==== ROUND 5: remove_held on gokapi x none (2026-09-24T12:11:35Z)
|
||||
14:12:02 remove (data + backups) -> 200 {'ok': True, 'data': {'removed': 'gokapi', 'volumes_removed': ['gokapi_gokapi_config', 'gokapi_gokapi_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazás nem tárolt
|
||||
14:12:02 + 26.8s gokapi: deployed=False state=not_deployed updating=False phase=None hold=None
|
||||
@@ -0,0 +1,4 @@
|
||||
14:11:35 ==== ROUND 5: remove_held on gokapi x none (2026-09-24T12:11:35Z)
|
||||
14:12:02 remove (data + backups) -> 200 {'ok': True, 'data': {'removed': 'gokapi', 'volumes_removed': ['gokapi_gokapi_config', 'gokapi_gokapi_data'], 'hdd_paths_removed': [], 'hdd_paths_preserved': [], 'hdd_note': 'Az alkalmazás nem tárolt
|
||||
14:12:02 + 26.8s gokapi: deployed=False state=not_deployed updating=False phase=None hold=None
|
||||
14:12:13 ==== ROUND 5 END: steady in 26.8s; readback=None; events=['2026-09-24T12:12:02Z app_removed (info)']
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,195 @@
|
||||
{
|
||||
"round": 6,
|
||||
"action": "failing_step",
|
||||
"accident": "POST /api/backup/run -> 200 {'ok': True, 'message': 'Mentés elindítva'} at 14:12:31",
|
||||
"app": "navidrome",
|
||||
"started": "2026-09-24T12:12:20Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "running",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 78°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 78°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"badge_catchup_s": 4.6,
|
||||
"act": "Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}",
|
||||
"armed_at": "14:12:31",
|
||||
"armed_why": "at verifying",
|
||||
"phases": [
|
||||
[
|
||||
5.9,
|
||||
"backing-up"
|
||||
],
|
||||
[
|
||||
7.5,
|
||||
"safety-dump"
|
||||
],
|
||||
[
|
||||
8.0,
|
||||
"pulling"
|
||||
],
|
||||
[
|
||||
9.6,
|
||||
"copying"
|
||||
],
|
||||
[
|
||||
10.1,
|
||||
"starting"
|
||||
],
|
||||
[
|
||||
10.6,
|
||||
"verifying"
|
||||
],
|
||||
[
|
||||
102.0,
|
||||
"undoing"
|
||||
],
|
||||
[
|
||||
109.9,
|
||||
"undone"
|
||||
]
|
||||
],
|
||||
"time_to_steady_s": 109.9,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "running",
|
||||
"update_phase": "undone",
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 78°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"A(z) navidrome frissítése 2026-09-24 14:14-kor nem sikerült. A doboz automatikusan visszaállította az előző változatot és az adatokat — semmi nem veszett el.",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 78°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"The update of navidrome at 2026-09-24 14:14 did not succeed. The box put back the previous version and its data automatically — nothing was lost.",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"readback": {
|
||||
"A": true
|
||||
},
|
||||
"events": [],
|
||||
"box_log": [
|
||||
"2026-09-24T12:12:31Z INFO [stacks] navidrome deluan/navidrome:latest running Up Less than a second (health: starting)",
|
||||
"2026-09-24T12:12:31Z INFO [api] Manual app-data backup (DB dump) triggered",
|
||||
"2026-09-24T12:12:31Z INFO [backup] Starting database dump run",
|
||||
"2026-09-24T12:12:31Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T12:12:31Z INFO [backup] Discovered 3 database(s): nextcloud-db(mariadb), romm-db(mariadb), paperless-postgres(postgres)",
|
||||
"2026-09-24T12:12:32Z INFO [backup] DB dump: nextcloud-db → nextcloud-mariadb.sql (855.4 KB, 490ms, 131 tables)",
|
||||
"2026-09-24T12:12:32Z INFO [backup] DB dump: romm-db → romm-mariadb.sql (112.9 KB, 306ms, 36 tables)",
|
||||
"2026-09-24T12:12:33Z INFO [backup] DB dump: paperless-postgres → paperless-ngx-postgres.sql (364.1 KB, 390ms, 72 tables)",
|
||||
"2026-09-24T12:12:33Z WARN [backup] Skipping volume dump for navidrome — the app is HELD stopped (its restore point is preserved)",
|
||||
"2026-09-24T12:12:33Z INFO [backup] Stopping nextcloud for safe volume dump",
|
||||
"2026-09-24T12:12:35Z INFO [backup] Volume dump: nextcloud/nextcloud_nextcloud_db_data → 164.9 MB",
|
||||
"2026-09-24T12:12:36Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:12:38Z INFO [backup] Volume dump: nextcloud/nextcloud_nextcloud_html → 761.6 MB",
|
||||
"2026-09-24T12:12:39Z INFO [backup] Volume dump: nextcloud/nextcloud_nextcloud_redis_data → 281.0 KB",
|
||||
"2026-09-24T12:12:39Z INFO [backup] Restarting nextcloud after volume dump",
|
||||
"2026-09-24T12:12:41Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:12:45Z INFO [backup] Stopping paperless-ngx for safe volume dump",
|
||||
"2026-09-24T12:12:46Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:12:51Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:12:53Z INFO [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_data → 1.0 MB",
|
||||
"2026-09-24T12:12:54Z INFO [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_postgres_data → 67.9 MB",
|
||||
"2026-09-24T12:12:54Z INFO [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_redis_data → 1.0 MB",
|
||||
"2026-09-24T12:12:54Z INFO [backup] Restarting paperless-ngx after volume dump",
|
||||
"2026-09-24T12:12:56Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:01Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:06Z INFO [backup] Stopping privatebin for safe volume dump",
|
||||
"2026-09-24T12:13:06Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:06Z INFO [backup] Volume dump: privatebin/privatebin_privatebin_data → 1.5 KB",
|
||||
"2026-09-24T12:13:06Z INFO [backup] Restarting privatebin after volume dump",
|
||||
"2026-09-24T12:13:07Z INFO [backup] Stopping romm for safe volume dump",
|
||||
"2026-09-24T12:13:11Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:12Z INFO [backup] Volume dump: romm/romm_romm_config → 2.5 KB",
|
||||
"2026-09-24T12:13:13Z INFO [backup] Volume dump: romm/romm_romm_db_data → 156.4 MB",
|
||||
"2026-09-24T12:13:14Z INFO [backup] Volume dump: romm/romm_romm_redis_data → 15.5 MB",
|
||||
"2026-09-24T12:13:14Z INFO [backup] Restarting romm after volume dump",
|
||||
"2026-09-24T12:13:16Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:21Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:25Z INFO [backup] Stopping vikunja for safe volume dump",
|
||||
"2026-09-24T12:13:26Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:26Z INFO [backup] Volume dump: vikunja/vikunja_vikunja_data → 1.5 KB",
|
||||
"2026-09-24T12:13:27Z INFO [backup] Volume dump: vikunja/vikunja_vikunja_db → 2.0 MB",
|
||||
"2026-09-24T12:13:27Z INFO [backup] Restarting vikunja after volume dump",
|
||||
"2026-09-24T12:13:28Z INFO [backup] Stopping wishlist for safe volume dump",
|
||||
"2026-09-24T12:13:29Z INFO [backup] Volume dump: wishlist/wishlist_wishlist_data → 302.0 KB",
|
||||
"2026-09-24T12:13:30Z INFO [backup] Volume dump: wishlist/wishlist_wishlist_uploads → 1.5 KB",
|
||||
"2026-09-24T12:13:30Z INFO [backup] Restarting wishlist after volume dump",
|
||||
"2026-09-24T12:13:31Z WARN [backup] Skipping volume dump for chaosoom — the app is HELD stopped (its restore point is preserved)",
|
||||
"2026-09-24T12:13:31Z INFO [backup] Stopping n8n for safe volume dump",
|
||||
"2026-09-24T12:13:31Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:33Z INFO [backup] Volume dump: n8n/n8n_n8n_data → 5.4 MB",
|
||||
"2026-09-24T12:13:33Z INFO [backup] Restarting n8n after volume dump",
|
||||
"2026-09-24T12:13:35Z INFO [backup] App-data backup completed: 3 databases (1.3 MB total), 7 volume dump(s) (1m3.85s)",
|
||||
"2026-09-24T12:13:35Z INFO [backup] Recovery unit captured for wishlist → /mnt/sys_drive/felhom-data/backups/primary/wishlist (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)",
|
||||
"2026-09-24T12:13:35Z INFO [backup] Recovery unit captured for n8n → /mnt/sys_drive/felhom-data/backups/primary/n8n (images=1, secrets-referenced=1, data_keys=0, portable-carried=1/1, withheld=0)",
|
||||
"2026-09-24T12:13:37Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:42Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:47Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:52Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:13:57Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:14:02Z WARN Health probe navidrome: API GET :8999/ping → Get \"http://navidrome:8999/ping\": dial tcp 172.18.0.3:8999: connect: connection refused",
|
||||
"2026-09-24T12:14:02Z ERROR [stacks] update navidrome FAILED after the new version was started: not healthy: not healthy within 1m30s (last: health check failing)",
|
||||
"2026-09-24T12:14:02Z INFO [stacks] update navidrome: kept 4222 bytes of the app's own log at /opt/docker/stacks/navidrome/hold-logs/20260924T121402Z/compose-logs.txt before stopping it (R-621)",
|
||||
"2026-09-24T12:14:02Z INFO [stacks] update navidrome: phase undoing",
|
||||
"2026-09-24T12:14:02Z WARN [stacks] update navidrome: UNDO — putting back the previous version and its 1 volume copy(ies) (reason: not healthy: not healthy within 1m30s (last: health check failing))",
|
||||
"2026-09-24T12:14:04Z INFO [stacks] pin navidrome: navidrome=deluan/navidrome:0.64.1",
|
||||
"2026-09-24T12:14:04Z INFO [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/navidrome not mounted — skipping ensure (held by drive gate)",
|
||||
"2026-09-24T12:14:10Z INFO [stacks] update navidrome: event app_update_undone",
|
||||
"2026-09-24T12:14:10Z INFO [stacks] update navidrome: UNDONE in 8s — the previous version is running on the data from before the update (the app's health check passed)",
|
||||
"2026-09-24T12:14:12Z INFO [sync] Updated navidrome/.felhom.yml",
|
||||
"2026-09-24T12:14:12Z INFO [api] Catalog sync completed: Sablonok frissítve — frissítve: navidrome"
|
||||
],
|
||||
"undo_copies_left": "0"
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
14:12:20 ==== ROUND 6: failing_step on navidrome x whole_box_backup (2026-09-24T12:12:20Z)
|
||||
14:12:22 drill: navidrome: failing step deluan/navidrome:0.64.1 -> deluan/navidrome:latest + probe 8999
|
||||
14:12:26 Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
|
||||
14:12:26 + 5.9s phase=backing-up
|
||||
14:12:28 + 7.5s phase=safety-dump
|
||||
14:12:29 + 8.0s phase=pulling
|
||||
14:12:30 + 9.6s phase=copying
|
||||
14:12:31 + 10.1s phase=starting
|
||||
14:12:31 + 10.6s phase=verifying
|
||||
14:12:31 >>> ARMED accident whole_box_backup (at verifying)
|
||||
14:12:31 >>> POST /api/backup/run -> 200 {'ok': True, 'message': 'Mentés elindítva'} at 14:12:31
|
||||
14:14:03 + 102.0s phase=undoing
|
||||
14:14:10 + 109.9s phase=undone
|
||||
14:14:10 + 109.9s navidrome: deployed=True state=running updating=False phase=undone hold=None
|
||||
14:14:11 drill: navidrome: back to deluan/navidrome:0.64.1 and its real probe
|
||||
14:14:16 navidrome: login as the seeded user http=200 ok=True
|
||||
@@ -0,0 +1,17 @@
|
||||
14:12:20 ==== ROUND 6: failing_step on navidrome x whole_box_backup (2026-09-24T12:12:20Z)
|
||||
14:12:22 drill: navidrome: failing step deluan/navidrome:0.64.1 -> deluan/navidrome:latest + probe 8999
|
||||
14:12:26 Update -> 202 {'ok': True, 'data': {'accepted': True, 'completed': False}, 'message': 'Frissítés elindult – az állapot a kártyán követhető'}
|
||||
14:12:26 + 5.9s phase=backing-up
|
||||
14:12:28 + 7.5s phase=safety-dump
|
||||
14:12:29 + 8.0s phase=pulling
|
||||
14:12:30 + 9.6s phase=copying
|
||||
14:12:31 + 10.1s phase=starting
|
||||
14:12:31 + 10.6s phase=verifying
|
||||
14:12:31 >>> ARMED accident whole_box_backup (at verifying)
|
||||
14:12:31 >>> POST /api/backup/run -> 200 {'ok': True, 'message': 'Mentés elindítva'} at 14:12:31
|
||||
14:14:03 + 102.0s phase=undoing
|
||||
14:14:10 + 109.9s phase=undone
|
||||
14:14:10 + 109.9s navidrome: deployed=True state=running updating=False phase=undone hold=None
|
||||
14:14:11 drill: navidrome: back to deluan/navidrome:0.64.1 and its real probe
|
||||
14:14:16 navidrome: login as the seeded user http=200 ok=True
|
||||
14:14:24 ==== ROUND 6 END: steady in 109.9s; readback={'A': True}; events=[]
|
||||
@@ -0,0 +1,622 @@
|
||||
2026/09/24 12:14:30 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.10:35772 (X-Forwarded-For: 192.168.0.180)
|
||||
2026/09/24 12:14:30 auth.go:202: [DEBUG] [web] login successful from 192.168.0.180, creating session
|
||||
2026/09/24 12:14:30 auth.go:268: [DEBUG] [web] session created, expires=2026-10-01T12:14:30Z, active_sessions=5
|
||||
2026/09/24 12:14:30 auth.go:222: [INFO] [web] Login from 172.18.0.10:35772
|
||||
2026/09/24 12:14:30 server.go:545: [DEBUG] [web] ServeHTTP: GET / from 172.18.0.10:35772
|
||||
2026/09/24 12:14:30 server.go:545: [DEBUG] [web] ServeHTTP: GET /launcher from 172.18.0.10:35772
|
||||
2026/09/24 12:14:30 router.go:1065: [INFO] [api] Manual catalog sync requested
|
||||
2026/09/24 12:14:32 router.go:362: [INFO] [api] Manual stack rescan requested
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=false composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:14:32 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:14:32 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:14:32 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (9 deployed, 49 available)
|
||||
2026/09/24 12:14:32 router.go:369: [INFO] [api] Stack rescan completed: 58 stacks found
|
||||
2026/09/24 12:14:34 router.go:431: [INFO] [api] Deploy requested for stack: chaoscrash
|
||||
2026/09/24 12:14:34 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=25.5 GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:14:34 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:14:34 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 25s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:34 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (8 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:14:34 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5475MB avail≈20423MB
|
||||
2026/09/24 12:14:34 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24220444 → total=25898MB avail=20423MB used=5475MB (21.1%)
|
||||
2026/09/24 12:14:35 deploy.go:1250: [INFO] [stacks] Memory check: total=25898MB, reserved=384MB, usable=25514MB, committed_used=1818MB, new_req=8MB, remaining=23688MB
|
||||
2026/09/24 12:14:35 deploy.go:253: [DEBUG] Deploy chaoscrash: received 2 user values
|
||||
2026/09/24 12:14:35 deploy.go:258: [DEBUG] SUBDOMAIN = "chaoscrash"
|
||||
2026/09/24 12:14:35 deploy.go:258: [DEBUG] DOMAIN = "enkisfelhom.hu"
|
||||
2026/09/24 12:14:35 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaoscrash — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:14:35 [INFO] [stacks] SaveAppConfig: saved config for chaoscrash
|
||||
2026/09/24 12:14:35 deploy.go:383: [INFO] [stacks] Deploying stack chaoscrash with 2 env vars: [DOMAIN, SUBDOMAIN]
|
||||
2026/09/24 12:14:35 manager.go:1582: [INFO] [stacks] Deploying stack chaoscrash — checking 1 images...
|
||||
2026/09/24 12:14:35 manager.go:1588: [DEBUG] alpine:3.20 — found locally
|
||||
2026/09/24 12:14:35 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_deploy_started (severity info) — further app_deploy_started events are logged at DEBUG only
|
||||
2026/09/24 12:14:35 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:14:35 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/chaoscrash)
|
||||
2026/09/24 12:14:35 lifecycle.go:70: [DEBUG] [integrations] OnStackStart: stack=chaoscrash, waiting 5s for state refresh
|
||||
2026/09/24 12:14:35 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaoscrash — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:14:35 [INFO] [stacks] SaveAppConfig: saved config for chaoscrash
|
||||
2026/09/24 12:14:35 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.4s)
|
||||
2026/09/24 12:14:35 deploy.go:462: [INFO] [stacks] Stack chaoscrash deployed successfully (took 0.4s)
|
||||
2026/09/24 12:14:35 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaoscrash — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:14:35 [INFO] [stacks] SaveAppConfig: saved config for chaoscrash
|
||||
2026/09/24 12:14:35 installed.go:420: [INFO] [stacks] installed-images chaoscrash: recorded 1 service(s) (chaoscrash=alpine:3.20 (sha256:d9e853e87e55…))
|
||||
2026/09/24 12:14:35 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaoscrash — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:14:35 [INFO] [stacks] SaveAppConfig: saved config for chaoscrash
|
||||
2026/09/24 12:14:35 pin.go:93: [INFO] [stacks] pin chaoscrash: chaoscrash=alpine:3.20
|
||||
2026/09/24 12:14:35 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_deployed (severity info) — further app_deployed events are logged at DEBUG only
|
||||
2026/09/24 12:14:38 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:14:38 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/chaoscrash)
|
||||
2026/09/24 12:14:38 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.2s)
|
||||
2026/09/24 12:14:38 manager.go:1543: [INFO] [stacks] Stack chaoscrash post-start status:
|
||||
2026/09/24 12:14:38 manager.go:1546: [INFO] [stacks] chaoscrash alpine:3.20 restarting Restarting (1) Less than a second ago
|
||||
2026/09/24 12:14:40 lifecycle.go:86: [DEBUG] [integrations] OnStackStart: stack=chaoscrash integrationsFound=0
|
||||
2026/09/24 12:14:44 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:14:44 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 35s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:44 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:14:44 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:14:44 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:14:54 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:14:54 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:14:54 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:14:54 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 45s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:14:54 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:14:54 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:14:54 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:14:55 router.go:1201: [INFO] [api] Manual app-data backup (DB dump) triggered
|
||||
2026/09/24 12:14:55 backup.go:522: [INFO] [backup] Starting database dump run
|
||||
2026/09/24 12:14:55 dbdump.go:130: [DEBUG] DiscoverDatabases: running docker ps to find database containers
|
||||
2026/09/24 12:14:55 dbdump.go:149: [DEBUG] DiscoverDatabases: docker ps output: f8196d9721e6 chaoscrash chaoscrash alpine:3.20
|
||||
642ad1cc5a7c navidrome navidrome deluan/navidrome:0.64.1
|
||||
124648859ae4 n8n n8n n8nio/n8n:2.31.3
|
||||
422cba16c96c wishlist wishlist ghcr.io/cmintey/wishlist:v0.67.1
|
||||
22b2c4451d37 vikunja vikunja vikunja/vikunja:2.3.0
|
||||
6d01f8e3b5ca romm romm rommapp/romm:5.3.1
|
||||
b613ce74ba5d romm-db romm mariadb:11.8
|
||||
aecb75c1bdbf romm-redis romm redis:7-alpine
|
||||
3e311b8f4fdc privatebin privatebin privatebin/pdo:2.0.6
|
||||
e70d5bc9c661 paperless-webserver paperless-ngx ghcr.io/paperle...
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container chaoscrash (image=alpine:3.20, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container navidrome (image=deluan/navidrome:0.64.1, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container n8n (image=n8nio/n8n:2.31.3, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container wishlist (image=ghcr.io/cmintey/wishlist:v0.67.1, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container vikunja (image=vikunja/vikunja:2.3.0, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm (image=rommapp/romm:5.3.1, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: romm-db (id=b613ce74ba5d)
|
||||
2026/09/24 12:14:55 dbdump.go:198: [DEBUG] DiscoverDatabases: romm-db → stack=romm, dbUser=root, dbName=romm
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container romm-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container privatebin (image=privatebin/pdo:2.0.6, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-webserver (image=ghcr.io/paperless-ngx/paperless-ngx:2.20.15, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:178: [DEBUG] DiscoverDatabases: found postgres container: paperless-postgres (id=41af1c5c28cc)
|
||||
2026/09/24 12:14:55 dbdump.go:896: [DEBUG] DiscoverDatabases: paperless-postgres → stack "paperless-ngx" from the compose project label (the container name would have given "paperless")
|
||||
2026/09/24 12:14:55 dbdump.go:198: [DEBUG] DiscoverDatabases: paperless-postgres → stack=paperless-ngx, dbUser=paperless, dbName=paperless
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container paperless-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud (image=nextcloud:34.0.4-apache, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:178: [DEBUG] DiscoverDatabases: found mariadb container: nextcloud-db (id=55ce027b0fae)
|
||||
2026/09/24 12:14:55 dbdump.go:198: [DEBUG] DiscoverDatabases: nextcloud-db → stack=nextcloud, dbUser=root, dbName=nextcloud
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container nextcloud-redis (image=redis:7-alpine, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.269.1, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:171: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
|
||||
2026/09/24 12:14:55 dbdump.go:205: [DEBUG] DiscoverDatabases: found 3 database(s), skipped 15 non-DB container(s)
|
||||
2026/09/24 12:14:55 dbdump.go:208: [INFO] [backup] Discovered 3 databases
|
||||
2026/09/24 12:14:55 backup.go:550: [INFO] [backup] Discovered 3 database(s): romm-db(mariadb), paperless-postgres(postgres), nextcloud-db(mariadb)
|
||||
2026/09/24 12:14:55 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/romm" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:14:55 dbdump.go:266: [DEBUG] DumpOne: starting dump for container=romm-db, stack=romm, dbType=mariadb, dest=/mnt/felhom-drives/scratch_hdd/userdata/romm/backups/primary/romm/db-dumps/romm-mariadb.sql
|
||||
2026/09/24 12:14:55 dbdump.go:321: [DEBUG] DumpOne: mariadb-dump command: docker exec b613ce74ba5d mariadb-dump -u root -p*** --single-transaction --routines --triggers romm
|
||||
2026/09/24 12:14:55 dbdump.go:405: [DEBUG] DumpOne: completed romm-db → romm-mariadb.sql (size=112.9 KB, valid=true, tables=36, duration=313ms)
|
||||
2026/09/24 12:14:55 dbdump.go:410: [INFO] [backup] DB dump: romm-db → romm-mariadb.sql (112.9 KB, 313ms, 36 tables)
|
||||
2026/09/24 12:14:55 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17657 bytes)
|
||||
2026/09/24 12:14:55 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:14:55 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:14:55 dbdump.go:266: [DEBUG] DumpOne: starting dump for container=paperless-postgres, stack=paperless-ngx, dbType=postgres, dest=/mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx/backups/primary/paperless-ngx/db-dumps/paperless-ngx-postgres.sql
|
||||
2026/09/24 12:14:55 dbdump.go:303: [DEBUG] DumpOne: pg_dump command: docker exec 41af1c5c28cc pg_dump -U paperless -d paperless --clean --if-exists --no-owner --no-privileges
|
||||
2026/09/24 12:14:55 dbdump.go:405: [DEBUG] DumpOne: completed paperless-postgres → paperless-ngx-postgres.sql (size=364.1 KB, valid=true, tables=72, duration=388ms)
|
||||
2026/09/24 12:14:55 dbdump.go:410: [INFO] [backup] DB dump: paperless-postgres → paperless-ngx-postgres.sql (364.1 KB, 388ms, 72 tables)
|
||||
2026/09/24 12:14:55 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17657 bytes)
|
||||
2026/09/24 12:14:55 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:14:55 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/nextcloud" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:14:55 dbdump.go:266: [DEBUG] DumpOne: starting dump for container=nextcloud-db, stack=nextcloud, dbType=mariadb, dest=/mnt/felhom-drives/scratch_hdd/userdata/nextcloud/backups/primary/nextcloud/db-dumps/nextcloud-mariadb.sql
|
||||
2026/09/24 12:14:55 dbdump.go:321: [DEBUG] DumpOne: mariadb-dump command: docker exec 55ce027b0fae mariadb-dump -u root -p*** --single-transaction --routines --triggers nextcloud
|
||||
2026/09/24 12:14:56 dbdump.go:405: [DEBUG] DumpOne: completed nextcloud-db → nextcloud-mariadb.sql (size=855.4 KB, valid=true, tables=131, duration=634ms)
|
||||
2026/09/24 12:14:56 dbdump.go:410: [INFO] [backup] DB dump: nextcloud-db → nextcloud-mariadb.sql (855.4 KB, 634ms, 131 tables)
|
||||
2026/09/24 12:14:56 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17657 bytes)
|
||||
2026/09/24 12:14:56 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:14:56 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd/userdata/navidrome" total=937.8 GB used=73.4 GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:14:56 backup.go:920: [INFO] [backup] Stopping navidrome for safe volume dump
|
||||
2026/09/24 12:14:56 manager.go:1283: [DEBUG] [stacks] StopStack navidrome: current state=running deployed=true containers=1
|
||||
2026/09/24 12:14:56 manager.go:1286: [INFO] [stacks] Stopping stack: navidrome
|
||||
2026/09/24 12:14:56 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, HDD_PATH, SUBDOMAIN, USERDATA_PATH, IMPORT_PATH] (10 app + 0 system)
|
||||
2026/09/24 12:14:56 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/navidrome)
|
||||
2026/09/24 12:14:56 manager.go:1483: [DEBUG] Command completed: docker compose down (took 0.3s)
|
||||
2026/09/24 12:14:56 manager.go:1295: [INFO] [stacks] Stack navidrome stopped successfully (took 0.3s)
|
||||
2026/09/24 12:14:56 backup.go:796: [DEBUG] [backup] Dumping volume navidrome_navidrome_data for navidrome
|
||||
2026/09/24 12:14:57 backup.go:821: [INFO] [backup] Volume dump: navidrome/navidrome_navidrome_data → 707.0 KB
|
||||
2026/09/24 12:14:57 backup.go:930: [INFO] [backup] Restarting navidrome after volume dump
|
||||
2026/09/24 12:14:57 manager.go:1194: [DEBUG] [stacks] StartStack navidrome: current state=stopped deployed=true
|
||||
2026/09/24 12:14:57 manager.go:1197: [INFO] [stacks] Starting stack: navidrome
|
||||
2026/09/24 12:14:57 manager.go:1204: [DEBUG] [stacks] StartStack navidrome: prepared 10 env vars for compose
|
||||
2026/09/24 12:14:57 manager.go:410: [INFO] [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/navidrome not mounted — skipping ensure (held by drive gate)
|
||||
2026/09/24 12:14:57 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, HDD_PATH, SUBDOMAIN, DOMAIN, USERDATA_PATH, IMPORT_PATH] (10 app + 0 system)
|
||||
2026/09/24 12:14:57 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/navidrome)
|
||||
2026/09/24 12:14:57 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.4s)
|
||||
2026/09/24 12:14:57 manager.go:1212: [INFO] [stacks] Stack navidrome started successfully (took 0.4s)
|
||||
2026/09/24 12:14:57 installed.go:409: [DEBUG] [stacks] installed-images navidrome: unchanged (1 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:14:57 backup.go:920: [INFO] [backup] Stopping nextcloud for safe volume dump
|
||||
2026/09/24 12:14:57 manager.go:1283: [DEBUG] [stacks] StopStack nextcloud: current state=running deployed=true containers=3
|
||||
2026/09/24 12:14:57 manager.go:1286: [INFO] [stacks] Stopping stack: nextcloud
|
||||
2026/09/24 12:14:57 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, MYSQL_ROOT_PASSWORD, NEXTCLOUD_ADMIN_PASSWORD, NEXTCLOUD_ADMIN_USER, USERDATA_PATH, IMPORT_PATH] (14 app + 0 system)
|
||||
2026/09/24 12:14:57 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/nextcloud)
|
||||
2026/09/24 12:14:59 manager.go:1483: [DEBUG] Command completed: docker compose down (took 1.8s)
|
||||
2026/09/24 12:14:59 manager.go:1295: [INFO] [stacks] Stack nextcloud stopped successfully (took 1.8s)
|
||||
2026/09/24 12:14:59 backup.go:796: [DEBUG] [backup] Dumping volume nextcloud_nextcloud_html for nextcloud
|
||||
2026/09/24 12:15:00 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, HDD_PATH, SUBDOMAIN, DOMAIN, USERDATA_PATH, IMPORT_PATH] (10 app + 0 system)
|
||||
2026/09/24 12:15:00 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/navidrome)
|
||||
2026/09/24 12:15:00 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.1s)
|
||||
2026/09/24 12:15:00 manager.go:1543: [INFO] [stacks] Stack navidrome post-start status:
|
||||
2026/09/24 12:15:00 manager.go:1546: [INFO] [stacks] navidrome deluan/navidrome:0.64.1@sha256:df22d661b8d0322c33754d999b567150df9e131a47ae53be71fed0154bf8cef5 running Up 3 seconds (health: starting)
|
||||
2026/09/24 12:15:02 backup.go:821: [INFO] [backup] Volume dump: nextcloud/nextcloud_nextcloud_html → 761.6 MB
|
||||
2026/09/24 12:15:02 backup.go:796: [DEBUG] [backup] Dumping volume nextcloud_nextcloud_redis_data for nextcloud
|
||||
2026/09/24 12:15:03 backup.go:821: [INFO] [backup] Volume dump: nextcloud/nextcloud_nextcloud_redis_data → 281.0 KB
|
||||
2026/09/24 12:15:03 backup.go:796: [DEBUG] [backup] Dumping volume nextcloud_nextcloud_db_data for nextcloud
|
||||
2026/09/24 12:15:04 backup.go:821: [INFO] [backup] Volume dump: nextcloud/nextcloud_nextcloud_db_data → 164.9 MB
|
||||
2026/09/24 12:15:04 backup.go:930: [INFO] [backup] Restarting nextcloud after volume dump
|
||||
2026/09/24 12:15:04 manager.go:1194: [DEBUG] [stacks] StartStack nextcloud: current state=stopped deployed=true
|
||||
2026/09/24 12:15:04 manager.go:1197: [INFO] [stacks] Starting stack: nextcloud
|
||||
2026/09/24 12:15:04 manager.go:1204: [DEBUG] [stacks] StartStack nextcloud: prepared 14 env vars for compose
|
||||
2026/09/24 12:15:04 manager.go:410: [INFO] [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/nextcloud not mounted — skipping ensure (held by drive gate)
|
||||
2026/09/24 12:15:04 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, NEXTCLOUD_ADMIN_USER, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, MYSQL_ROOT_PASSWORD, NEXTCLOUD_ADMIN_PASSWORD, USERDATA_PATH, IMPORT_PATH] (14 app + 0 system)
|
||||
2026/09/24 12:15:04 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/nextcloud)
|
||||
2026/09/24 12:15:04 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:15:04 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:15:04 manager.go:851: [DEBUG] [stacks] restart-policy of down member "nextcloud" = "unless-stopped"
|
||||
2026/09/24 12:15:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:04 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 2 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:15:04 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:15:04 healthprobe.go:181: [DEBUG] Health probe navidrome: API GET :4533/ping → 200 (2ms)
|
||||
2026/09/24 12:15:04 healthprobe.go:159: [WARN] Health probes: 1 ok, 1 unhealthy (of 2 probed)
|
||||
2026/09/24 12:15:10 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 6.5s)
|
||||
2026/09/24 12:15:10 manager.go:1212: [INFO] [stacks] Stack nextcloud started successfully (took 6.5s)
|
||||
2026/09/24 12:15:10 installed.go:409: [DEBUG] [stacks] installed-images nextcloud: unchanged (3 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:15:10 backup.go:920: [INFO] [backup] Stopping paperless-ngx for safe volume dump
|
||||
2026/09/24 12:15:10 manager.go:1283: [DEBUG] [stacks] StopStack paperless-ngx: current state=running deployed=true containers=3
|
||||
2026/09/24 12:15:10 manager.go:1286: [INFO] [stacks] Stopping stack: paperless-ngx
|
||||
2026/09/24 12:15:10 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, PAPERLESS_SECRET_KEY, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, PAPERLESS_ADMIN_PASSWORD, PAPERLESS_ADMIN_USER, PAPERLESS_OCR_LANGUAGE, USERDATA_PATH, IMPORT_PATH] (15 app + 0 system)
|
||||
2026/09/24 12:15:10 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/paperless-ngx)
|
||||
2026/09/24 12:15:13 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, NEXTCLOUD_ADMIN_USER, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, MYSQL_ROOT_PASSWORD, NEXTCLOUD_ADMIN_PASSWORD, USERDATA_PATH, IMPORT_PATH] (14 app + 0 system)
|
||||
2026/09/24 12:15:13 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/nextcloud)
|
||||
2026/09/24 12:15:14 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.1s)
|
||||
2026/09/24 12:15:14 manager.go:1543: [INFO] [stacks] Stack nextcloud post-start status:
|
||||
2026/09/24 12:15:14 manager.go:1546: [INFO] [stacks] nextcloud nextcloud:34.0.4-apache@sha256:a5ace30c695afe48c2c406e940ee7886a81e13fa382e57cd68b2416d1a66914c running Up 3 seconds (health: starting)
|
||||
2026/09/24 12:15:14 manager.go:1546: [INFO] [stacks] nextcloud-db mariadb:12.3@sha256:805c8e104bd563d5bfa24fadd3f31cd419ea859cb5277f32b5dbf2db714f9ed1 running Up 9 seconds (healthy)
|
||||
2026/09/24 12:15:14 manager.go:1546: [INFO] [stacks] nextcloud-redis redis:7-alpine@sha256:c35af3bbcef51a62c8bae5a9a563c6f1b60d7ebaea4cb5a3ccbcc157580ae098 running Up 9 seconds (healthy)
|
||||
2026/09/24 12:15:14 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:15:14 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:15:14 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:15:18 manager.go:1483: [DEBUG] Command completed: docker compose down (took 7.3s)
|
||||
2026/09/24 12:15:18 manager.go:1295: [INFO] [stacks] Stack paperless-ngx stopped successfully (took 7.3s)
|
||||
2026/09/24 12:15:18 backup.go:796: [DEBUG] [backup] Dumping volume paperless-ngx_paperless_data for paperless-ngx
|
||||
2026/09/24 12:15:18 backup.go:821: [INFO] [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_data → 1.0 MB
|
||||
2026/09/24 12:15:18 backup.go:796: [DEBUG] [backup] Dumping volume paperless-ngx_paperless_postgres_data for paperless-ngx
|
||||
2026/09/24 12:15:19 backup.go:821: [INFO] [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_postgres_data → 67.9 MB
|
||||
2026/09/24 12:15:19 backup.go:796: [DEBUG] [backup] Dumping volume paperless-ngx_paperless_redis_data for paperless-ngx
|
||||
2026/09/24 12:15:19 backup.go:821: [INFO] [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_redis_data → 1.0 MB
|
||||
2026/09/24 12:15:19 backup.go:930: [INFO] [backup] Restarting paperless-ngx after volume dump
|
||||
2026/09/24 12:15:19 manager.go:1194: [DEBUG] [stacks] StartStack paperless-ngx: current state=stopped deployed=true
|
||||
2026/09/24 12:15:19 manager.go:1197: [INFO] [stacks] Starting stack: paperless-ngx
|
||||
2026/09/24 12:15:19 manager.go:1204: [DEBUG] [stacks] StartStack paperless-ngx: prepared 15 env vars for compose
|
||||
2026/09/24 12:15:19 manager.go:410: [INFO] [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/paperless-ngx not mounted — skipping ensure (held by drive gate)
|
||||
2026/09/24 12:15:19 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, PAPERLESS_SECRET_KEY, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, PAPERLESS_ADMIN_PASSWORD, PAPERLESS_ADMIN_USER, PAPERLESS_OCR_LANGUAGE, USERDATA_PATH, IMPORT_PATH] (15 app + 0 system)
|
||||
2026/09/24 12:15:19 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/paperless-ngx)
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4995MB avail≈20903MB
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24789940 → total=25898MB avail=20903MB used=4995MB (19.3%)
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=25.5GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readLoadAvg: raw="4.33 3.89 3.47 5/1533 5165" → 1m=4.33 5m=3.89 15m=3.47
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 69.0°C (hwmon2)
|
||||
2026/09/24 12:15:24 info.go:13: [DEBUG] [system] GetInfo done in 70ms — mem=4995MB/25898MB (19.3%), rootDisk=25.5GB/68.4GB (37.3%), load=4.33/3.89/3.47, temp=69.0°C (hwmon2), cpu=32.1%
|
||||
2026/09/24 12:15:24 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:15:24 scheduler.go:346: [INFO] [scheduler] Running job: stack-scan
|
||||
2026/09/24 12:15:24 scheduler.go:67: [DEBUG] [scheduler] job stack-scan: execution starting
|
||||
2026/09/24 12:15:24 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:15:24 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:15:24 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:15:24 manager.go:851: [DEBUG] [stacks] restart-policy of down member "paperless-webserver" = "unless-stopped"
|
||||
2026/09/24 12:15:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:24 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 2 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:15:24 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=true composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:15:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:15:25 healthprobe.go:181: [DEBUG] Health probe nextcloud: API GET :80/status.php → 200 (46ms)
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:15:25 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:15:25 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:15:25 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (10 deployed, 48 available)
|
||||
2026/09/24 12:15:25 scheduler.go:363: [INFO] [scheduler] Job stack-scan completed (took 129ms)
|
||||
2026/09/24 12:15:25 healthprobe.go:159: [WARN] Health probes: 1 ok, 1 unhealthy (of 2 probed)
|
||||
2026/09/24 12:15:31 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 11.3s)
|
||||
2026/09/24 12:15:31 manager.go:1212: [INFO] [stacks] Stack paperless-ngx started successfully (took 11.3s)
|
||||
2026/09/24 12:15:31 installed.go:409: [DEBUG] [stacks] installed-images paperless-ngx: unchanged (3 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:15:31 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=25.5 GB avail=39.4GB (37.3%)
|
||||
2026/09/24 12:15:31 backup.go:920: [INFO] [backup] Stopping privatebin for safe volume dump
|
||||
2026/09/24 12:15:31 manager.go:1283: [DEBUG] [stacks] StopStack privatebin: current state=running deployed=true containers=1
|
||||
2026/09/24 12:15:31 manager.go:1286: [INFO] [stacks] Stopping stack: privatebin
|
||||
2026/09/24 12:15:31 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:15:31 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/privatebin)
|
||||
2026/09/24 12:15:31 manager.go:1483: [DEBUG] Command completed: docker compose down (took 0.4s)
|
||||
2026/09/24 12:15:31 manager.go:1295: [INFO] [stacks] Stack privatebin stopped successfully (took 0.4s)
|
||||
2026/09/24 12:15:31 backup.go:796: [DEBUG] [backup] Dumping volume privatebin_privatebin_data for privatebin
|
||||
2026/09/24 12:15:32 backup.go:821: [INFO] [backup] Volume dump: privatebin/privatebin_privatebin_data → 1.5 KB
|
||||
2026/09/24 12:15:32 backup.go:930: [INFO] [backup] Restarting privatebin after volume dump
|
||||
2026/09/24 12:15:32 manager.go:1194: [DEBUG] [stacks] StartStack privatebin: current state=stopped deployed=true
|
||||
2026/09/24 12:15:32 manager.go:1197: [INFO] [stacks] Starting stack: privatebin
|
||||
2026/09/24 12:15:32 manager.go:1204: [DEBUG] [stacks] StartStack privatebin: prepared 8 env vars for compose
|
||||
2026/09/24 12:15:32 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:15:32 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/privatebin)
|
||||
2026/09/24 12:15:32 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.4s)
|
||||
2026/09/24 12:15:32 manager.go:1212: [INFO] [stacks] Stack privatebin started successfully (took 0.4s)
|
||||
2026/09/24 12:15:32 installed.go:409: [DEBUG] [stacks] installed-images privatebin: unchanged (1 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:15:32 backup.go:920: [INFO] [backup] Stopping romm for safe volume dump
|
||||
2026/09/24 12:15:32 manager.go:1283: [DEBUG] [stacks] StopStack romm: current state=running deployed=true containers=3
|
||||
2026/09/24 12:15:32 manager.go:1286: [INFO] [stacks] Stopping stack: romm
|
||||
2026/09/24 12:15:32 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, HDD_PATH, MYSQL_ROOT_PASSWORD, ROMM_AUTH_SECRET_KEY, SUBDOMAIN, DB_PASSWORD, USERDATA_PATH, IMPORT_PATH] (13 app + 0 system)
|
||||
2026/09/24 12:15:32 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/romm)
|
||||
2026/09/24 12:15:34 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, PAPERLESS_SECRET_KEY, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, PAPERLESS_ADMIN_PASSWORD, PAPERLESS_ADMIN_USER, PAPERLESS_OCR_LANGUAGE, USERDATA_PATH, IMPORT_PATH] (15 app + 0 system)
|
||||
2026/09/24 12:15:34 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/paperless-ngx)
|
||||
2026/09/24 12:15:34 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.1s)
|
||||
2026/09/24 12:15:34 manager.go:1543: [INFO] [stacks] Stack paperless-ngx post-start status:
|
||||
2026/09/24 12:15:34 manager.go:1546: [INFO] [stacks] paperless-postgres postgres:16-alpine running Up 14 seconds (healthy)
|
||||
2026/09/24 12:15:34 manager.go:1546: [INFO] [stacks] paperless-redis redis:7-alpine running Up 14 seconds (healthy)
|
||||
2026/09/24 12:15:34 manager.go:1546: [INFO] [stacks] paperless-webserver ghcr.io/paperless-ngx/paperless-ngx:2.20.15 running Up 3 seconds (health: starting)
|
||||
2026/09/24 12:15:34 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:15:34 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:15:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:15:34 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:15:35 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:15:35 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/privatebin)
|
||||
2026/09/24 12:15:35 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.2s)
|
||||
2026/09/24 12:15:35 manager.go:1543: [INFO] [stacks] Stack privatebin post-start status:
|
||||
2026/09/24 12:15:35 manager.go:1546: [INFO] [stacks] privatebin privatebin/pdo:2.0.6@sha256:4c141b2326f8b353598ce9ce7507a9cfecf2dad5c60a39fea903d430e296d8f5 running Up 3 seconds (health: starting)
|
||||
2026/09/24 12:15:38 manager.go:1483: [DEBUG] Command completed: docker compose down (took 5.5s)
|
||||
2026/09/24 12:15:38 manager.go:1295: [INFO] [stacks] Stack romm stopped successfully (took 5.5s)
|
||||
2026/09/24 12:15:38 backup.go:796: [DEBUG] [backup] Dumping volume romm_romm_redis_data for romm
|
||||
2026/09/24 12:15:38 backup.go:821: [INFO] [backup] Volume dump: romm/romm_romm_redis_data → 15.6 MB
|
||||
2026/09/24 12:15:38 backup.go:796: [DEBUG] [backup] Dumping volume romm_romm_config for romm
|
||||
2026/09/24 12:15:39 backup.go:821: [INFO] [backup] Volume dump: romm/romm_romm_config → 2.5 KB
|
||||
2026/09/24 12:15:39 backup.go:796: [DEBUG] [backup] Dumping volume romm_romm_db_data for romm
|
||||
2026/09/24 12:15:40 backup.go:821: [INFO] [backup] Volume dump: romm/romm_romm_db_data → 156.4 MB
|
||||
2026/09/24 12:15:40 backup.go:930: [INFO] [backup] Restarting romm after volume dump
|
||||
2026/09/24 12:15:40 manager.go:1194: [DEBUG] [stacks] StartStack romm: current state=stopped deployed=true
|
||||
2026/09/24 12:15:40 manager.go:1197: [INFO] [stacks] Starting stack: romm
|
||||
2026/09/24 12:15:40 manager.go:1204: [DEBUG] [stacks] StartStack romm: prepared 13 env vars for compose
|
||||
2026/09/24 12:15:40 manager.go:410: [INFO] [stacks] userdata belt: drive /mnt/felhom-drives/scratch_hdd/userdata/romm not mounted — skipping ensure (held by drive gate)
|
||||
2026/09/24 12:15:40 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, ROMM_AUTH_SECRET_KEY, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, MYSQL_ROOT_PASSWORD, USERDATA_PATH, IMPORT_PATH] (13 app + 0 system)
|
||||
2026/09/24 12:15:40 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/romm)
|
||||
2026/09/24 12:15:44 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:15:44 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:15:44 manager.go:851: [DEBUG] [stacks] restart-policy of down member "romm" = "unless-stopped"
|
||||
2026/09/24 12:15:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:44 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 2 targets (5 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:15:44 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:15:44 healthprobe.go:181: [DEBUG] Health probe privatebin: HTTP GET :8080/ → 200 (5ms)
|
||||
2026/09/24 12:15:44 healthprobe.go:159: [WARN] Health probes: 1 ok, 1 unhealthy (of 2 probed)
|
||||
2026/09/24 12:15:51 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 11.4s)
|
||||
2026/09/24 12:15:51 manager.go:1212: [INFO] [stacks] Stack romm started successfully (took 11.4s)
|
||||
2026/09/24 12:15:51 installed.go:409: [DEBUG] [stacks] installed-images romm: unchanged (3 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:15:51 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=25.5 GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:15:51 backup.go:920: [INFO] [backup] Stopping vikunja for safe volume dump
|
||||
2026/09/24 12:15:51 manager.go:1283: [DEBUG] [stacks] StopStack vikunja: current state=unhealthy deployed=true containers=1
|
||||
2026/09/24 12:15:51 manager.go:1286: [INFO] [stacks] Stopping stack: vikunja
|
||||
2026/09/24 12:15:51 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, VIKUNJA_SERVICE_JWTSECRET, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:15:51 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/vikunja)
|
||||
2026/09/24 12:15:52 manager.go:1483: [DEBUG] Command completed: docker compose down (took 0.4s)
|
||||
2026/09/24 12:15:52 manager.go:1295: [INFO] [stacks] Stack vikunja stopped successfully (took 0.4s)
|
||||
2026/09/24 12:15:52 backup.go:796: [DEBUG] [backup] Dumping volume vikunja_vikunja_data for vikunja
|
||||
2026/09/24 12:15:52 backup.go:821: [INFO] [backup] Volume dump: vikunja/vikunja_vikunja_data → 1.5 KB
|
||||
2026/09/24 12:15:52 backup.go:796: [DEBUG] [backup] Dumping volume vikunja_vikunja_db for vikunja
|
||||
2026/09/24 12:15:53 backup.go:821: [INFO] [backup] Volume dump: vikunja/vikunja_vikunja_db → 2.0 MB
|
||||
2026/09/24 12:15:53 backup.go:930: [INFO] [backup] Restarting vikunja after volume dump
|
||||
2026/09/24 12:15:53 manager.go:1194: [DEBUG] [stacks] StartStack vikunja: current state=stopped deployed=true
|
||||
2026/09/24 12:15:53 manager.go:1197: [INFO] [stacks] Starting stack: vikunja
|
||||
2026/09/24 12:15:53 manager.go:1204: [DEBUG] [stacks] StartStack vikunja: prepared 9 env vars for compose
|
||||
2026/09/24 12:15:53 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, VIKUNJA_SERVICE_JWTSECRET, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:15:53 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/vikunja)
|
||||
2026/09/24 12:15:54 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.6s)
|
||||
2026/09/24 12:15:54 manager.go:1212: [INFO] [stacks] Stack vikunja started successfully (took 0.6s)
|
||||
2026/09/24 12:15:54 installed.go:409: [DEBUG] [stacks] installed-images vikunja: unchanged (1 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:15:54 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=25.5 GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:15:54 backup.go:920: [INFO] [backup] Stopping wishlist for safe volume dump
|
||||
2026/09/24 12:15:54 manager.go:1283: [DEBUG] [stacks] StopStack wishlist: current state=running deployed=true containers=1
|
||||
2026/09/24 12:15:54 manager.go:1286: [INFO] [stacks] Stopping stack: wishlist
|
||||
2026/09/24 12:15:54 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:15:54 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:15:54 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, ROMM_AUTH_SECRET_KEY, SUBDOMAIN, DB_PASSWORD, DOMAIN, HDD_PATH, MYSQL_ROOT_PASSWORD, USERDATA_PATH, IMPORT_PATH] (13 app + 0 system)
|
||||
2026/09/24 12:15:54 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/romm)
|
||||
2026/09/24 12:15:54 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:15:54 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:15:54 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:15:54 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:15:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:15:54 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (5 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:15:54 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:15:54 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:15:55 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.3s)
|
||||
2026/09/24 12:15:55 manager.go:1543: [INFO] [stacks] Stack romm post-start status:
|
||||
2026/09/24 12:15:55 manager.go:1546: [INFO] [stacks] romm rommapp/romm:5.3.1@sha256:0d66b4ea152a237c7f24b95e87459f46d3c596a7c0b35a82f26bc971487278b3 running Up 3 seconds (health: starting)
|
||||
2026/09/24 12:15:55 manager.go:1546: [INFO] [stacks] romm-db mariadb:11.8@sha256:79d59758afc91b89b120b0a8904d637f5a3b3e1c4900f29b740d6d46c72fef68 running Up 14 seconds (healthy)
|
||||
2026/09/24 12:15:55 manager.go:1546: [INFO] [stacks] romm-redis redis:7-alpine@sha256:858f009f9709ce576febc734aa78b8f6d624b82571f9ddb6bda4377c833b3499 running Up 14 seconds (healthy)
|
||||
2026/09/24 12:15:55 manager.go:1483: [DEBUG] Command completed: docker compose down (took 0.9s)
|
||||
2026/09/24 12:15:55 manager.go:1295: [INFO] [stacks] Stack wishlist stopped successfully (took 0.9s)
|
||||
2026/09/24 12:15:55 backup.go:796: [DEBUG] [backup] Dumping volume wishlist_wishlist_data for wishlist
|
||||
2026/09/24 12:15:55 manager.go:1502: [ERROR] [stacks] execCommand failed: exit status 1
|
||||
2026/09/24 12:15:56 backup.go:821: [INFO] [backup] Volume dump: wishlist/wishlist_wishlist_data → 302.0 KB
|
||||
2026/09/24 12:15:56 backup.go:796: [DEBUG] [backup] Dumping volume wishlist_wishlist_uploads for wishlist
|
||||
2026/09/24 12:15:56 backup.go:821: [INFO] [backup] Volume dump: wishlist/wishlist_wishlist_uploads → 1.5 KB
|
||||
2026/09/24 12:15:56 backup.go:930: [INFO] [backup] Restarting wishlist after volume dump
|
||||
2026/09/24 12:15:56 manager.go:1194: [DEBUG] [stacks] StartStack wishlist: current state=stopped deployed=true
|
||||
2026/09/24 12:15:56 manager.go:1197: [INFO] [stacks] Starting stack: wishlist
|
||||
2026/09/24 12:15:56 manager.go:1204: [DEBUG] [stacks] StartStack wishlist: prepared 8 env vars for compose
|
||||
2026/09/24 12:15:56 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:15:56 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:15:57 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, VIKUNJA_SERVICE_JWTSECRET, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:15:57 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/vikunja)
|
||||
2026/09/24 12:15:57 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.3s)
|
||||
2026/09/24 12:15:57 manager.go:1543: [INFO] [stacks] Stack vikunja post-start status:
|
||||
2026/09/24 12:15:57 manager.go:1546: [INFO] [stacks] vikunja vikunja/vikunja:2.3.0 running Up 3 seconds
|
||||
2026/09/24 12:15:57 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.9s)
|
||||
2026/09/24 12:15:57 manager.go:1212: [INFO] [stacks] Stack wishlist started successfully (took 0.9s)
|
||||
2026/09/24 12:15:58 installed.go:409: [DEBUG] [stacks] installed-images wishlist: unchanged (1 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:15:58 backup.go:712: [DEBUG] [backup] chaoscrash has no named volumes — volume dump skipped
|
||||
2026/09/24 12:15:58 backup.go:705: [WARN] [backup] Skipping volume dump for chaosoom — the app is HELD stopped (its restore point is preserved)
|
||||
2026/09/24 12:15:58 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=25.5 GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:15:58 backup.go:920: [INFO] [backup] Stopping n8n for safe volume dump
|
||||
2026/09/24 12:15:58 manager.go:1283: [DEBUG] [stacks] StopStack n8n: current state=running deployed=true containers=1
|
||||
2026/09/24 12:15:58 manager.go:1286: [INFO] [stacks] Stopping stack: n8n
|
||||
2026/09/24 12:15:58 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, N8N_ENCRYPTION_KEY, SUBDOMAIN, DOMAIN, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:15:58 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/n8n)
|
||||
2026/09/24 12:15:59 manager.go:1483: [DEBUG] Command completed: docker compose down (took 1.4s)
|
||||
2026/09/24 12:15:59 manager.go:1295: [INFO] [stacks] Stack n8n stopped successfully (took 1.4s)
|
||||
2026/09/24 12:15:59 backup.go:796: [DEBUG] [backup] Dumping volume n8n_n8n_data for n8n
|
||||
2026/09/24 12:16:00 backup.go:821: [INFO] [backup] Volume dump: n8n/n8n_n8n_data → 5.4 MB
|
||||
2026/09/24 12:16:00 backup.go:930: [INFO] [backup] Restarting n8n after volume dump
|
||||
2026/09/24 12:16:00 manager.go:1194: [DEBUG] [stacks] StartStack n8n: current state=stopped deployed=true
|
||||
2026/09/24 12:16:00 manager.go:1197: [INFO] [stacks] Starting stack: n8n
|
||||
2026/09/24 12:16:00 manager.go:1204: [DEBUG] [stacks] StartStack n8n: prepared 9 env vars for compose
|
||||
2026/09/24 12:16:00 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, N8N_ENCRYPTION_KEY, SUBDOMAIN, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:16:00 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/n8n)
|
||||
2026/09/24 12:16:01 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:16:01 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/wishlist)
|
||||
2026/09/24 12:16:01 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.7s)
|
||||
2026/09/24 12:16:01 manager.go:1212: [INFO] [stacks] Stack n8n started successfully (took 0.7s)
|
||||
2026/09/24 12:16:01 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.3s)
|
||||
2026/09/24 12:16:01 manager.go:1543: [INFO] [stacks] Stack wishlist post-start status:
|
||||
2026/09/24 12:16:01 manager.go:1546: [INFO] [stacks] wishlist ghcr.io/cmintey/wishlist:v0.67.1@sha256:4b89bfb5b57ffb087c33978d21b09048e5c37f4506326e9ccd2705a0a1d86548 running Up 4 seconds (health: starting)
|
||||
2026/09/24 12:16:01 installed.go:409: [DEBUG] [stacks] installed-images n8n: unchanged (1 service(s)) — app.yaml not rewritten
|
||||
2026/09/24 12:16:01 backup.go:636: [INFO] [backup] App-data backup completed: 3 databases (1.3 MB total), 8 volume dump(s) (1m6.606s)
|
||||
2026/09/24 12:16:01 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=25.4 GB avail=39.4GB (37.2%)
|
||||
2026/09/24 12:16:01 recovery_unit.go:224: [INFO] [backup] Recovery unit captured for chaoscrash → /mnt/sys_drive/felhom-data/backups/primary/chaoscrash (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)
|
||||
2026/09/24 12:16:04 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, N8N_ENCRYPTION_KEY, SUBDOMAIN, IMPORT_PATH] (9 app + 0 system)
|
||||
2026/09/24 12:16:04 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/n8n)
|
||||
2026/09/24 12:16:04 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.2s)
|
||||
2026/09/24 12:16:04 manager.go:1543: [INFO] [stacks] Stack n8n post-start status:
|
||||
2026/09/24 12:16:04 manager.go:1546: [INFO] [stacks] n8n n8nio/n8n:2.31.3 running Up 4 seconds (health: starting)
|
||||
2026/09/24 12:16:04 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:16:04 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:16:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:16:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:04 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (4 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:16:14 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:16:14 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:16:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:14 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 3 targets (3 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:16:14 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:16:14 healthprobe.go:181: [DEBUG] Health probe paperless-ngx: HTTP GET :8000/ → 302 (7ms)
|
||||
2026/09/24 12:16:14 healthprobe.go:181: [DEBUG] Health probe wishlist: HTTP GET :3000/ → 307 (8ms)
|
||||
2026/09/24 12:16:14 healthprobe.go:159: [WARN] Health probes: 2 ok, 1 unhealthy (of 3 probed)
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5260MB avail≈20638MB
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24474944 → total=25898MB avail=20638MB used=5260MB (20.3%)
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=25.5GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readLoadAvg: raw="6.22 4.52 3.72 9/1506 6307" → 1m=6.22 5m=4.52 15m=3.72
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 75.0°C (hwmon2)
|
||||
2026/09/24 12:16:24 info.go:13: [DEBUG] [system] GetInfo done in 60ms — mem=5260MB/25898MB (20.3%), rootDisk=25.5GB/68.4GB (37.3%), load=6.22/4.52/3.72, temp=75.0°C (hwmon2), cpu=59.7%
|
||||
2026/09/24 12:16:24 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:16:24 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:16:24 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:16:24 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:16:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:16:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:24 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (6 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:16:24 healthprobe.go:181: [DEBUG] Health probe n8n: API GET :5678/healthz → 200 (3ms)
|
||||
2026/09/24 12:16:24 healthprobe.go:161: [INFO] Health probes: 1 ok (of 1 probed)
|
||||
2026/09/24 12:16:25 main.go:3671: [WARN] [deadapp] chaoscrash: crash_loop — 10 in 10m0s; STOPPING it (decision 28)
|
||||
2026/09/24 12:16:25 manager.go:1283: [DEBUG] [stacks] StopStack chaoscrash: current state=restarting deployed=true containers=1
|
||||
2026/09/24 12:16:25 manager.go:1286: [INFO] [stacks] Stopping stack: chaoscrash
|
||||
2026/09/24 12:16:25 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:16:25 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/chaoscrash)
|
||||
2026/09/24 12:16:25 manager.go:1483: [DEBUG] Command completed: docker compose down (took 0.1s)
|
||||
2026/09/24 12:16:25 manager.go:1295: [INFO] [stacks] Stack chaoscrash stopped successfully (took 0.1s)
|
||||
2026/09/24 12:16:25 settings.go:1814: [WARN] [settings] restore hold SET for chaoscrash — the app stays stopped until it is cleared
|
||||
2026/09/24 12:16:25 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17837 bytes)
|
||||
2026/09/24 12:16:25 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:16:25 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (17879 bytes)
|
||||
2026/09/24 12:16:25 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:16:25 update_guard.go:776: [WARN] [backup] chaoscrash is STOPPED by the box: crash_loop (trip 1 within 24h0m0s) — Start gives it one more try (decision 28)
|
||||
2026/09/24 12:16:25 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_stopped_unhealthy (severity warning) — further app_stopped_unhealthy events are logged at DEBUG only
|
||||
2026/09/24 12:16:26 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaoscrash from 172.18.0.10:35772
|
||||
2026/09/24 12:16:26 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaoscrash from 172.18.0.10:35772
|
||||
2026/09/24 12:16:26 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaoscrash from 172.18.0.10:35772
|
||||
2026/09/24 12:16:26 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaoscrash from 172.18.0.10:35772
|
||||
@@ -0,0 +1,121 @@
|
||||
{
|
||||
"round": 7,
|
||||
"action": "crash_loop",
|
||||
"accident": "POST /api/backup/run -> 200 {'ok': True, 'message': 'Mentés elindítva'} at 14:14:55",
|
||||
"app": "chaoscrash",
|
||||
"started": "2026-09-24T12:14:30Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": false,
|
||||
"state": "not_deployed",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
}
|
||||
},
|
||||
"act": "deploy -> 202",
|
||||
"armed_at": "14:14:55",
|
||||
"armed_why": "20 s after the install",
|
||||
"time_to_steady_s": 115.9,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "stopped",
|
||||
"update_phase": null,
|
||||
"hold_reason": "Az alkalmazást leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). Az Indítás gombbal újra megpróbálhatod.",
|
||||
"hold_kind": "unhealthy_stop",
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 76°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az alkalmazást leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). Az Indítás gombbal újra megpróbálhatod.",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 76°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"We stopped the app because it kept crashing (or ran out of memory). Press Start to try again.",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"readback": null,
|
||||
"events": [
|
||||
"2026-09-24T12:16:25Z app_stopped_unhealthy (warning)"
|
||||
],
|
||||
"box_log": [
|
||||
"2026-09-24T12:14:34Z INFO [api] Deploy requested for stack: chaoscrash",
|
||||
"2026-09-24T12:14:35Z INFO [stacks] Deploying stack chaoscrash with 2 env vars: [DOMAIN, SUBDOMAIN]",
|
||||
"2026-09-24T12:14:35Z INFO [stacks] Deploying stack chaoscrash — checking 1 images...",
|
||||
"2026-09-24T12:14:35Z INFO [stacks] Stack chaoscrash deployed successfully (took 0.4s)",
|
||||
"2026-09-24T12:14:35Z INFO [stacks] installed-images chaoscrash: recorded 1 service(s) (chaoscrash=alpine:3.20 (sha256:d9e853e87e55…))",
|
||||
"2026-09-24T12:14:35Z INFO [stacks] pin chaoscrash: chaoscrash=alpine:3.20",
|
||||
"2026-09-24T12:14:38Z INFO [stacks] Stack chaoscrash post-start status:",
|
||||
"2026-09-24T12:14:38Z INFO [stacks] chaoscrash alpine:3.20 restarting Restarting (1) Less than a second ago",
|
||||
"2026-09-24T12:14:55Z INFO [api] Manual app-data backup (DB dump) triggered",
|
||||
"2026-09-24T12:14:55Z INFO [backup] Starting database dump run",
|
||||
"2026-09-24T12:14:55Z INFO [backup] Discovered 3 databases",
|
||||
"2026-09-24T12:14:55Z INFO [backup] Discovered 3 database(s): romm-db(mariadb), paperless-postgres(postgres), nextcloud-db(mariadb)",
|
||||
"2026-09-24T12:14:55Z INFO [backup] DB dump: romm-db → romm-mariadb.sql (112.9 KB, 313ms, 36 tables)",
|
||||
"2026-09-24T12:14:55Z INFO [backup] DB dump: paperless-postgres → paperless-ngx-postgres.sql (364.1 KB, 388ms, 72 tables)",
|
||||
"2026-09-24T12:14:56Z INFO [backup] DB dump: nextcloud-db → nextcloud-mariadb.sql (855.4 KB, 634ms, 131 tables)",
|
||||
"2026-09-24T12:14:56Z INFO [backup] Stopping navidrome for safe volume dump",
|
||||
"2026-09-24T12:14:57Z INFO [backup] Volume dump: navidrome/navidrome_navidrome_data → 707.0 KB",
|
||||
"2026-09-24T12:14:57Z INFO [backup] Restarting navidrome after volume dump",
|
||||
"2026-09-24T12:14:57Z INFO [backup] Stopping nextcloud for safe volume dump",
|
||||
"2026-09-24T12:15:02Z INFO [backup] Volume dump: nextcloud/nextcloud_nextcloud_html → 761.6 MB",
|
||||
"2026-09-24T12:15:03Z INFO [backup] Volume dump: nextcloud/nextcloud_nextcloud_redis_data → 281.0 KB",
|
||||
"2026-09-24T12:15:04Z INFO [backup] Volume dump: nextcloud/nextcloud_nextcloud_db_data → 164.9 MB",
|
||||
"2026-09-24T12:15:04Z INFO [backup] Restarting nextcloud after volume dump",
|
||||
"2026-09-24T12:15:10Z INFO [backup] Stopping paperless-ngx for safe volume dump",
|
||||
"2026-09-24T12:15:18Z INFO [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_data → 1.0 MB",
|
||||
"2026-09-24T12:15:19Z INFO [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_postgres_data → 67.9 MB",
|
||||
"2026-09-24T12:15:19Z INFO [backup] Volume dump: paperless-ngx/paperless-ngx_paperless_redis_data → 1.0 MB",
|
||||
"2026-09-24T12:15:19Z INFO [backup] Restarting paperless-ngx after volume dump",
|
||||
"2026-09-24T12:15:31Z INFO [backup] Stopping privatebin for safe volume dump",
|
||||
"2026-09-24T12:15:32Z INFO [backup] Volume dump: privatebin/privatebin_privatebin_data → 1.5 KB",
|
||||
"2026-09-24T12:15:32Z INFO [backup] Restarting privatebin after volume dump",
|
||||
"2026-09-24T12:15:32Z INFO [backup] Stopping romm for safe volume dump",
|
||||
"2026-09-24T12:15:38Z INFO [backup] Volume dump: romm/romm_romm_redis_data → 15.6 MB",
|
||||
"2026-09-24T12:15:39Z INFO [backup] Volume dump: romm/romm_romm_config → 2.5 KB",
|
||||
"2026-09-24T12:15:40Z INFO [backup] Volume dump: romm/romm_romm_db_data → 156.4 MB",
|
||||
"2026-09-24T12:15:40Z INFO [backup] Restarting romm after volume dump",
|
||||
"2026-09-24T12:15:51Z INFO [backup] Stopping vikunja for safe volume dump",
|
||||
"2026-09-24T12:15:52Z INFO [backup] Volume dump: vikunja/vikunja_vikunja_data → 1.5 KB",
|
||||
"2026-09-24T12:15:53Z INFO [backup] Volume dump: vikunja/vikunja_vikunja_db → 2.0 MB",
|
||||
"2026-09-24T12:15:53Z INFO [backup] Restarting vikunja after volume dump",
|
||||
"2026-09-24T12:15:54Z INFO [backup] Stopping wishlist for safe volume dump",
|
||||
"2026-09-24T12:15:56Z INFO [backup] Volume dump: wishlist/wishlist_wishlist_data → 302.0 KB",
|
||||
"2026-09-24T12:15:56Z INFO [backup] Volume dump: wishlist/wishlist_wishlist_uploads → 1.5 KB",
|
||||
"2026-09-24T12:15:56Z INFO [backup] Restarting wishlist after volume dump",
|
||||
"2026-09-24T12:15:58Z WARN [backup] Skipping volume dump for chaosoom — the app is HELD stopped (its restore point is preserved)",
|
||||
"2026-09-24T12:15:58Z INFO [backup] Stopping n8n for safe volume dump",
|
||||
"2026-09-24T12:16:00Z INFO [backup] Volume dump: n8n/n8n_n8n_data → 5.4 MB",
|
||||
"2026-09-24T12:16:00Z INFO [backup] Restarting n8n after volume dump",
|
||||
"2026-09-24T12:16:01Z INFO [backup] App-data backup completed: 3 databases (1.3 MB total), 8 volume dump(s) (1m6.606s)",
|
||||
"2026-09-24T12:16:01Z INFO [backup] Recovery unit captured for chaoscrash → /mnt/sys_drive/felhom-data/backups/primary/chaoscrash (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)",
|
||||
"2026-09-24T12:16:25Z WARN [deadapp] chaoscrash: crash_loop — 10 in 10m0s; STOPPING it (decision 28)",
|
||||
"2026-09-24T12:16:25Z INFO [stacks] Stopping stack: chaoscrash",
|
||||
"2026-09-24T12:16:25Z INFO [stacks] Stack chaoscrash stopped successfully (took 0.1s)",
|
||||
"2026-09-24T12:16:25Z WARN [settings] restore hold SET for chaoscrash — the app stays stopped until it is cleared",
|
||||
"2026-09-24T12:16:25Z WARN [backup] chaoscrash is STOPPED by the box: crash_loop (trip 1 within 24h0m0s) — Start gives it one more try (decision 28)"
|
||||
],
|
||||
"undo_copies_left": "0"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
14:14:30 ==== ROUND 7: crash_loop on chaoscrash x whole_box_backup (2026-09-24T12:14:30Z)
|
||||
14:14:35 deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
14:14:35 + 4.4s chaoscrash: deployed=True state=deploying updating=False phase=None hold=None
|
||||
14:14:37 + 6.4s chaoscrash: deployed=True state=running updating=False phase=None hold=None
|
||||
14:14:55 >>> ARMED accident whole_box_backup (20 s after the install)
|
||||
14:14:55 >>> POST /api/backup/run -> 200 {'ok': True, 'message': 'Mentés elindítva'} at 14:14:55
|
||||
14:15:01 + 30.7s chaoscrash: deployed=True state=restarting updating=False phase=None hold=None
|
||||
14:15:58 + 87.5s chaoscrash: deployed=True state=running updating=False phase=None hold=None
|
||||
14:16:00 + 89.5s chaoscrash: deployed=True state=restarting updating=False phase=None hold=None
|
||||
14:16:26 + 115.9s chaoscrash: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
@@ -0,0 +1,11 @@
|
||||
14:14:30 ==== ROUND 7: crash_loop on chaoscrash x whole_box_backup (2026-09-24T12:14:30Z)
|
||||
14:14:35 deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
14:14:35 + 4.4s chaoscrash: deployed=True state=deploying updating=False phase=None hold=None
|
||||
14:14:37 + 6.4s chaoscrash: deployed=True state=running updating=False phase=None hold=None
|
||||
14:14:55 >>> ARMED accident whole_box_backup (20 s after the install)
|
||||
14:14:55 >>> POST /api/backup/run -> 200 {'ok': True, 'message': 'Mentés elindítva'} at 14:14:55
|
||||
14:15:01 + 30.7s chaoscrash: deployed=True state=restarting updating=False phase=None hold=None
|
||||
14:15:58 + 87.5s chaoscrash: deployed=True state=running updating=False phase=None hold=None
|
||||
14:16:00 + 89.5s chaoscrash: deployed=True state=restarting updating=False phase=None hold=None
|
||||
14:16:26 + 115.9s chaoscrash: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
14:16:35 ==== ROUND 7 END: steady in 115.9s; readback=None; events=['2026-09-24T12:16:25Z app_stopped_unhealthy (warning)']
|
||||
@@ -0,0 +1,465 @@
|
||||
2026/09/24 12:16:51 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.10:35772 (X-Forwarded-For: 192.168.0.180)
|
||||
2026/09/24 12:16:51 auth.go:202: [DEBUG] [web] login successful from 192.168.0.180, creating session
|
||||
2026/09/24 12:16:51 auth.go:268: [DEBUG] [web] session created, expires=2026-10-01T12:16:51Z, active_sessions=6
|
||||
2026/09/24 12:16:51 auth.go:222: [INFO] [web] Login from 172.18.0.10:35772
|
||||
2026/09/24 12:16:51 server.go:545: [DEBUG] [web] ServeHTTP: GET / from 172.18.0.10:35772
|
||||
2026/09/24 12:16:51 server.go:545: [DEBUG] [web] ServeHTTP: GET /launcher from 172.18.0.10:35772
|
||||
2026/09/24 12:16:51 router.go:1065: [INFO] [api] Manual catalog sync requested
|
||||
2026/09/24 12:16:51 sync.go:208: [INFO] [sync] Starting catalog sync
|
||||
2026/09/24 12:16:51 sync.go:296: [INFO] [sync] Pulling latest from https://gitea.dooplex.hu/admin/app-catalog-drill.git (branch: main)
|
||||
2026/09/24 12:16:51 sync.go:298: [DEBUG] [sync] git fetch --depth 1 origin main in /opt/docker/felhom-controller/data/catalog-cache
|
||||
2026/09/24 12:16:51 sync.go:627: [DEBUG] [sync] Running: git fetch --depth 1 origin main
|
||||
2026/09/24 12:16:51 sync.go:627: [DEBUG] [sync] Running: git reset --hard origin/main
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] actualbudget/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] actualbudget/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] adventurelog/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] adventurelog/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] audiobookshelf/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] audiobookshelf/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] bentopdf/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] bentopdf/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] bookstack/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] bookstack/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] calcom/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] calcom/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] calibre-web/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] calibre-web/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] chaoscrash/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] chaoscrash/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] chaosoom/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] chaosoom/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] chaosoomb/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] chaosoomb/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] claper/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] claper/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] code-server/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] code-server/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] crafty-controller/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] crafty-controller/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] docmost/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] docmost/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] emby/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] emby/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] ghost/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] ghost/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] gitea/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] gitea/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] glance/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] glance/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] gokapi/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] gokapi/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] grafana/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] grafana/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] gramps-web/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] gramps-web/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] home-assistant/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] home-assistant/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] homebox/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] homebox/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] homepage/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] homepage/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] immich/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] immich/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] jellyfin/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] jellyfin/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] kimai/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] kimai/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] komga/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] komga/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] mealie/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] mealie/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:533: [DEBUG] [sync] n8n: catalog has moved past the pin — rendering the stored applied definition
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] n8n/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] n8n/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] navidrome/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] navidrome/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] nextcloud/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] nextcloud/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] onlyoffice/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] onlyoffice/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] opengist/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] opengist/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] outline/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] outline/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] paperless-ngx/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] paperless-ngx/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] papra/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] papra/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] plant-it/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] plant-it/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] plex/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] plex/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] privatebin/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] privatebin/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] radarr/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] radarr/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] rallly/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] rallly/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] recipe-importer/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] recipe-importer/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] romm/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] romm/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] seerr/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] seerr/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] sonarr/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] sonarr/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] sparkyfitness/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] sparkyfitness/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] tandoor/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] tandoor/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] termix/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] termix/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] uptime-kuma/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] uptime-kuma/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] vaultwarden/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] vaultwarden/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:533: [DEBUG] [sync] vikunja: catalog has moved past the pin — rendering the stored applied definition
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] vikunja/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] vikunja/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] wanderer/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] wanderer/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] wger/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] wger/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] wishlist/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] wishlist/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] zipline/docker-compose.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:440: [DEBUG] [sync] zipline/.felhom.yml: hash match, skipped
|
||||
2026/09/24 12:16:51 sync.go:263: [INFO] [sync] Catalog sync complete
|
||||
2026/09/24 12:16:51 router.go:1071: [INFO] [api] Catalog sync completed: Sablonok naprakészek — nincs változás
|
||||
2026/09/24 12:16:53 router.go:362: [INFO] [api] Manual stack rescan requested
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=true composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=false composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:16:53 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:16:53 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:16:53 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (10 deployed, 48 available)
|
||||
2026/09/24 12:16:53 router.go:369: [INFO] [api] Stack rescan completed: 58 stacks found
|
||||
2026/09/24 12:16:54 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:16:54 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:16:54 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:16:54 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:16:54 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:16:54 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:16:54 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:16:56 router.go:431: [INFO] [api] Deploy requested for stack: chaosoomb
|
||||
2026/09/24 12:16:56 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=25.5 GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:16:56 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5430MB avail≈20468MB
|
||||
2026/09/24 12:16:56 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24274344 → total=25898MB avail=20468MB used=5430MB (21.0%)
|
||||
2026/09/24 12:16:56 deploy.go:1250: [INFO] [stacks] Memory check: total=25898MB, reserved=384MB, usable=25514MB, committed_used=1818MB, new_req=8MB, remaining=23688MB
|
||||
2026/09/24 12:16:56 deploy.go:253: [DEBUG] Deploy chaosoomb: received 2 user values
|
||||
2026/09/24 12:16:56 deploy.go:258: [DEBUG] DOMAIN = "enkisfelhom.hu"
|
||||
2026/09/24 12:16:56 deploy.go:258: [DEBUG] SUBDOMAIN = "chaosoomb"
|
||||
2026/09/24 12:16:56 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaosoomb — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:16:56 [INFO] [stacks] SaveAppConfig: saved config for chaosoomb
|
||||
2026/09/24 12:16:56 deploy.go:383: [INFO] [stacks] Deploying stack chaosoomb with 2 env vars: [DOMAIN, SUBDOMAIN]
|
||||
2026/09/24 12:16:56 manager.go:1582: [INFO] [stacks] Deploying stack chaosoomb — checking 1 images...
|
||||
2026/09/24 12:16:56 manager.go:1588: [DEBUG] alpine:3.20 — found locally
|
||||
2026/09/24 12:16:56 notifier.go:1259: [DEBUG] notifier disabled: dropped event app_deploy_started (severity info)
|
||||
2026/09/24 12:16:56 lifecycle.go:70: [DEBUG] [integrations] OnStackStart: stack=chaosoomb, waiting 5s for state refresh
|
||||
2026/09/24 12:16:56 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:16:56 manager.go:1463: [DEBUG] Running: docker compose up -d (in /opt/docker/stacks/chaosoomb)
|
||||
2026/09/24 12:16:56 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaosoomb — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:16:56 [INFO] [stacks] SaveAppConfig: saved config for chaosoomb
|
||||
2026/09/24 12:16:56 manager.go:1483: [DEBUG] Command completed: docker compose up -d (took 0.3s)
|
||||
2026/09/24 12:16:56 deploy.go:462: [INFO] [stacks] Stack chaosoomb deployed successfully (took 0.4s)
|
||||
2026/09/24 12:16:56 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaosoomb — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:16:56 [INFO] [stacks] SaveAppConfig: saved config for chaosoomb
|
||||
2026/09/24 12:16:56 installed.go:420: [INFO] [stacks] installed-images chaosoomb: recorded 1 service(s) (chaosoomb=alpine:3.20 (sha256:d9e853e87e55…))
|
||||
2026/09/24 12:16:56 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/chaosoomb — 2 env vars, 0 encrypted, 0 sensitive fields
|
||||
2026/09/24 12:16:56 [INFO] [stacks] SaveAppConfig: saved config for chaosoomb
|
||||
2026/09/24 12:16:56 pin.go:93: [INFO] [stacks] pin chaosoomb: chaosoomb=alpine:3.20
|
||||
2026/09/24 12:16:56 notifier.go:1259: [DEBUG] notifier disabled: dropped event app_deployed (severity info)
|
||||
2026/09/24 12:16:59 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:16:59 manager.go:1463: [DEBUG] Running: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (in /opt/docker/stacks/chaosoomb)
|
||||
2026/09/24 12:16:59 manager.go:1483: [DEBUG] Command completed: docker compose ps -a --format table {{.Name}} {{.Image}} {{.State}} {{.Status}} (took 0.1s)
|
||||
2026/09/24 12:16:59 manager.go:1543: [INFO] [stacks] Stack chaosoomb post-start status:
|
||||
2026/09/24 12:16:59 manager.go:1546: [INFO] [stacks] chaosoomb alpine:3.20 running Up 3 seconds
|
||||
2026/09/24 12:17:01 lifecycle.go:86: [DEBUG] [integrations] OnStackStart: stack=chaosoomb integrationsFound=0
|
||||
2026/09/24 12:17:04 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:17:04 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:04 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:17:04 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:17:04 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:17:14 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:17:14 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:14 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (8 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5461MB avail≈20437MB
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24237404 → total=25898MB avail=20437MB used=5461MB (21.1%)
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=25.5GB avail=39.3GB (37.3%)
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readLoadAvg: raw="5.47 4.63 3.81 13/1552 6674" → 1m=5.47 5m=4.63 15m=3.81
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 72.1°C (hwmon2)
|
||||
2026/09/24 12:17:24 info.go:13: [DEBUG] [system] GetInfo done in 67ms — mem=5461MB/25898MB (21.1%), rootDisk=25.5GB/68.4GB (37.3%), load=5.47/4.63/3.81, temp=72.1°C (hwmon2), cpu=29.5%
|
||||
2026/09/24 12:17:24 scheduler.go:346: [INFO] [scheduler] Running job: stack-scan
|
||||
2026/09/24 12:17:24 scheduler.go:67: [DEBUG] [scheduler] job stack-scan: execution starting
|
||||
2026/09/24 12:17:24 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
|
||||
2026/09/24 12:17:24 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
|
||||
2026/09/24 12:17:24 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:17:24 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaoscrash" deployed=true composePath=/opt/docker/stacks/chaoscrash/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoom" deployed=true composePath=/opt/docker/stacks/chaosoom/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "chaosoomb" deployed=true composePath=/opt/docker/stacks/chaosoomb/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=true composePath=/opt/docker/stacks/n8n/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=true composePath=/opt/docker/stacks/navidrome/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=true composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=true composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=true composePath=/opt/docker/stacks/privatebin/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=true composePath=/opt/docker/stacks/romm/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=false composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=true composePath=/opt/docker/stacks/vikunja/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=true composePath=/opt/docker/stacks/wishlist/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:608: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
|
||||
2026/09/24 12:17:24 manager.go:1690: [DEBUG] [stacks] getCatalogTemplateSlugs: found 56 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
|
||||
2026/09/24 12:17:24 manager.go:687: [DEBUG] [stacks] ScanStacks: catalog has 56 template slugs for orphan detection
|
||||
2026/09/24 12:17:24 manager.go:718: [INFO] [stacks] ScanStacks complete: 58 stacks found (11 deployed, 47 available)
|
||||
2026/09/24 12:17:24 scheduler.go:363: [INFO] [scheduler] Job stack-scan completed (took 92ms)
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:25 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:17:25 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:17:25 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:17:25 main.go:872: [WARN] [deadapp] chaosoomb: container chaosoomb was OOM-killed (started 2026-09-24T12:17:22.994688333Z; kills 2, limit 32M, peak 32M)
|
||||
2026/09/24 12:17:25 notifier.go:1255: [WARN] notifier disabled (no hub configured): DROPPED event app_oom (severity warning) — further app_oom events are logged at DEBUG only
|
||||
2026/09/24 12:17:34 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:17:34 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:34 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (8 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:17:44 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:17:44 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:44 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:17:44 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:17:44 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:17:54 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:17:54 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:17:54 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:17:54 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 2m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:17:54 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:17:54 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:17:54 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:17:55 main.go:872: [WARN] [deadapp] chaosoomb: container chaosoomb was OOM-killed (started 2026-09-24T12:17:36.838256991Z; kills 13, limit 32M, peak 32M)
|
||||
2026/09/24 12:17:55 notifier.go:1259: [DEBUG] notifier disabled: dropped event app_oom (severity warning)
|
||||
2026/09/24 12:18:04 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:18:04 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 3m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:04 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:18:04 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (8 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:18:14 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:18:14 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 3m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 2m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:14 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:18:14 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:18:14 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈5453MB avail≈20445MB
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=24247068 → total=25898MB avail=20445MB used=5453MB (21.1%)
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=61.8GB avail=3.0GB (90.5%)
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=73.4GB avail=816.7GB (7.8%)
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readLoadAvg: raw="4.80 4.57 3.84 12/1537 6850" → 1m=4.80 5m=4.57 15m=3.84
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 70.2°C (hwmon2)
|
||||
2026/09/24 12:18:24 info.go:13: [DEBUG] [system] GetInfo done in 80ms — mem=5453MB/25898MB (21.1%), rootDisk=61.8GB/68.4GB (90.5%), load=4.80/4.57/3.84, temp=70.2°C (hwmon2), cpu=30.7%
|
||||
2026/09/24 12:18:24 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:18:24 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
|
||||
2026/09/24 12:18:24 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:18:24 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m40s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 2m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 3m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 3m0s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:24 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping vikunja — last check 10s ago, effective interval 10s, healthy=false
|
||||
2026/09/24 12:18:24 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (8 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:18:25 main.go:3671: [WARN] [deadapp] chaosoomb: crash_loop — 6 in 10m0s; STOPPING it (decision 28)
|
||||
2026/09/24 12:18:25 manager.go:1283: [DEBUG] [stacks] StopStack chaosoomb: current state=running deployed=true containers=1
|
||||
2026/09/24 12:18:25 manager.go:1286: [INFO] [stacks] Stopping stack: chaosoomb
|
||||
2026/09/24 12:18:25 manager.go:1454: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, DOMAIN, SUBDOMAIN, IMPORT_PATH] (8 app + 0 system)
|
||||
2026/09/24 12:18:25 manager.go:1463: [DEBUG] Running: docker compose down (in /opt/docker/stacks/chaosoomb)
|
||||
2026/09/24 12:18:32 manager.go:1483: [DEBUG] Command completed: docker compose down (took 7.4s)
|
||||
2026/09/24 12:18:32 manager.go:1295: [INFO] [stacks] Stack chaosoomb stopped successfully (took 7.4s)
|
||||
2026/09/24 12:18:32 settings.go:1814: [WARN] [settings] restore hold SET for chaosoomb — the app stays stopped until it is cleared
|
||||
2026/09/24 12:18:32 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (18057 bytes)
|
||||
2026/09/24 12:18:32 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:18:32 settings.go:844: [DEBUG] [settings] saved to /opt/docker/felhom-controller/data/settings.json (18098 bytes)
|
||||
2026/09/24 12:18:32 settings.go:847: [INFO] [settings] Settings saved
|
||||
2026/09/24 12:18:32 update_guard.go:776: [WARN] [backup] chaosoomb is STOPPED by the box: crash_loop (trip 1 within 24h0m0s) — Start gives it one more try (decision 28)
|
||||
2026/09/24 12:18:32 notifier.go:1259: [DEBUG] notifier disabled: dropped event app_stopped_unhealthy (severity warning)
|
||||
2026/09/24 12:18:33 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoomb from 172.18.0.10:35772
|
||||
2026/09/24 12:18:33 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoomb from 172.18.0.10:35772
|
||||
2026/09/24 12:18:33 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoomb from 172.18.0.10:35772
|
||||
2026/09/24 12:18:33 server.go:545: [DEBUG] [web] ServeHTTP: GET /apps/chaosoomb from 172.18.0.10:35772
|
||||
2026/09/24 12:18:34 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
|
||||
2026/09/24 12:18:34 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping wishlist — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping navidrome — last check 3m30s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping nextcloud — last check 3m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping paperless-ngx — last check 2m20s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping privatebin — last check 2m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping romm — last check 1m50s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:54: [DEBUG] [stacks] RunHealthProbes: skipping n8n — last check 2m10s ago, effective interval 5m0s, healthy=true
|
||||
2026/09/24 12:18:34 healthprobe.go:104: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (7 skipped not due, 0 skipped no container)
|
||||
2026/09/24 12:18:34 healthprobe.go:190: [WARN] Health probe vikunja: API GET :8999/api/v1/info → Get "http://vikunja:8999/api/v1/info": dial tcp 172.18.0.8:8999: connect: connection refused
|
||||
2026/09/24 12:18:34 healthprobe.go:159: [WARN] Health probes: 0 ok, 1 unhealthy (of 1 probed)
|
||||
@@ -0,0 +1,88 @@
|
||||
{
|
||||
"round": 8,
|
||||
"action": "oom_app",
|
||||
"accident": {
|
||||
"kind": "disk_to_floor_plus_1g",
|
||||
"cmd": "fallocate /var/lib/docker/chaos-fill leaving 3 GB free (floor 2 GB + 1 GB)",
|
||||
"fired_at": "14:17:25",
|
||||
"result": "rc=0 filled 39025688576 bytes /dev/loop1 69G 62G 3.0G 96% /var/lib/docker "
|
||||
},
|
||||
"app": "chaosoomb",
|
||||
"started": "2026-09-24T12:16:51Z",
|
||||
"before": {
|
||||
"state": {
|
||||
"deployed": false,
|
||||
"state": "not_deployed",
|
||||
"update_phase": null,
|
||||
"hold_reason": null,
|
||||
"hold_kind": null,
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
}
|
||||
},
|
||||
"act": "deploy -> 202",
|
||||
"armed_at": "14:17:16",
|
||||
"armed_why": "20 s after the install",
|
||||
"time_to_steady_s": 102.0,
|
||||
"after": {
|
||||
"state": {
|
||||
"deployed": true,
|
||||
"state": "stopped",
|
||||
"update_phase": null,
|
||||
"hold_reason": "Az alkalmazást leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). Az Indítás gombbal újra megpróbálhatod.",
|
||||
"hold_kind": "unhealthy_stop",
|
||||
"update_error": null,
|
||||
"ladder_steps_left": null
|
||||
},
|
||||
"badges": {
|
||||
"hu": [
|
||||
{
|
||||
"title": "Ez az alkalmazás a legfrissebb elérhető változatot futtatja.",
|
||||
"text": "Naprakész"
|
||||
}
|
||||
],
|
||||
"en": [
|
||||
{
|
||||
"title": "This app is running the newest version available.",
|
||||
"text": "Up to date"
|
||||
}
|
||||
]
|
||||
},
|
||||
"page_hu": [
|
||||
"Temperature high: 76°C (hwmon2) Rendszermonitor →",
|
||||
"+ 1 további figyelmeztetés →",
|
||||
"Az alkalmazást leállítottuk, mert újra és újra összeomlott (vagy elfogyott a memóriája). Az Indítás gombbal újra megpróbálhatod.",
|
||||
"Az ügyfélszolgálat foglalkozik ezzel az alkalmazással, ezért az adatai megmaradnak: most csak magát az alkalmazást távolíthatod el."
|
||||
],
|
||||
"page_en": [
|
||||
"Temperature high: 76°C (hwmon2) System monitor →",
|
||||
"+ 1 more warning →",
|
||||
"We stopped the app because it kept crashing (or ran out of memory). Press Start to try again.",
|
||||
"Support is working on this app, so its data stays: for now you can remove only the app itself."
|
||||
]
|
||||
},
|
||||
"readback": null,
|
||||
"events": [
|
||||
"2026-09-24T12:17:25Z app_oom (warning)",
|
||||
"2026-09-24T12:17:55Z app_oom (warning)",
|
||||
"2026-09-24T12:18:32Z app_stopped_unhealthy (warning)"
|
||||
],
|
||||
"box_log": [
|
||||
"2026-09-24T12:16:56Z INFO [api] Deploy requested for stack: chaosoomb",
|
||||
"2026-09-24T12:16:56Z INFO [stacks] Deploying stack chaosoomb with 2 env vars: [DOMAIN, SUBDOMAIN]",
|
||||
"2026-09-24T12:16:56Z INFO [stacks] Deploying stack chaosoomb — checking 1 images...",
|
||||
"2026-09-24T12:16:56Z INFO [stacks] Stack chaosoomb deployed successfully (took 0.4s)",
|
||||
"2026-09-24T12:16:56Z INFO [stacks] installed-images chaosoomb: recorded 1 service(s) (chaosoomb=alpine:3.20 (sha256:d9e853e87e55…))",
|
||||
"2026-09-24T12:16:56Z INFO [stacks] pin chaosoomb: chaosoomb=alpine:3.20",
|
||||
"2026-09-24T12:16:59Z INFO [stacks] Stack chaosoomb post-start status:",
|
||||
"2026-09-24T12:16:59Z INFO [stacks] chaosoomb alpine:3.20 running Up 3 seconds",
|
||||
"2026-09-24T12:17:25Z WARN [deadapp] chaosoomb: container chaosoomb was OOM-killed (started 2026-09-24T12:17:22.994688333Z; kills 2, limit 32M, peak 32M)",
|
||||
"2026-09-24T12:17:55Z WARN [deadapp] chaosoomb: container chaosoomb was OOM-killed (started 2026-09-24T12:17:36.838256991Z; kills 13, limit 32M, peak 32M)",
|
||||
"2026-09-24T12:18:25Z WARN [deadapp] chaosoomb: crash_loop — 6 in 10m0s; STOPPING it (decision 28)",
|
||||
"2026-09-24T12:18:25Z INFO [stacks] Stopping stack: chaosoomb",
|
||||
"2026-09-24T12:18:32Z INFO [stacks] Stack chaosoomb stopped successfully (took 7.4s)",
|
||||
"2026-09-24T12:18:32Z WARN [settings] restore hold SET for chaosoomb — the app stays stopped until it is cleared",
|
||||
"2026-09-24T12:18:32Z WARN [backup] chaosoomb is STOPPED by the box: crash_loop (trip 1 within 24h0m0s) — Start gives it one more try (decision 28)"
|
||||
],
|
||||
"undo_copies_left": "0"
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
14:16:51 ==== ROUND 8: oom_app on chaosoomb x disk_to_floor_plus_1g (2026-09-24T12:16:51Z)
|
||||
14:16:56 deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
14:16:56 + 4.8s chaosoomb: deployed=True state=not_deployed updating=False phase=None hold=None
|
||||
14:16:58 + 6.8s chaosoomb: deployed=True state=running updating=False phase=None hold=None
|
||||
14:17:16 >>> ARMED accident disk_to_floor_plus_1g (20 s after the install)
|
||||
14:18:05 + 73.6s chaosoomb: deployed=True state=restarting updating=False phase=None hold=None
|
||||
14:18:15 + 83.8s chaosoomb: deployed=True state=running updating=False phase=None hold=None
|
||||
14:18:33 + 102.0s chaosoomb: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
14:18:33 >>> accident done: {'kind': 'disk_to_floor_plus_1g', 'cmd': 'fallocate /var/lib/docker/chaos-fill leaving 3 GB free (floor 2 GB + 1 GB)', 'fired_at': '14:17:25', 'result': 'rc=0 filled 39025688576 bytes /dev/loop1 69G 62G 3.0G 96% /var/lib/docker '}
|
||||
@@ -0,0 +1,10 @@
|
||||
14:16:51 ==== ROUND 8: oom_app on chaosoomb x disk_to_floor_plus_1g (2026-09-24T12:16:51Z)
|
||||
14:16:56 deploy -> 202 {'ok': True, 'message': 'Telepítés elindítva – az állapot a kártyán követhető'}
|
||||
14:16:56 + 4.8s chaosoomb: deployed=True state=not_deployed updating=False phase=None hold=None
|
||||
14:16:58 + 6.8s chaosoomb: deployed=True state=running updating=False phase=None hold=None
|
||||
14:17:16 >>> ARMED accident disk_to_floor_plus_1g (20 s after the install)
|
||||
14:18:05 + 73.6s chaosoomb: deployed=True state=restarting updating=False phase=None hold=None
|
||||
14:18:15 + 83.8s chaosoomb: deployed=True state=running updating=False phase=None hold=None
|
||||
14:18:33 + 102.0s chaosoomb: deployed=True state=stopped updating=False phase=None hold=unhealthy_stop
|
||||
14:18:33 >>> accident done: {'kind': 'disk_to_floor_plus_1g', 'cmd': 'fallocate /var/lib/docker/chaos-fill leaving 3 GB free (floor 2 GB + 1 GB)', 'fired_at': '14:17:25', 'result': 'rc=0 filled 39025688576 bytes /dev/loop1 69G 62G 3.0G 96% /var/lib/docker '}
|
||||
14:18:40 ==== ROUND 8 END: steady in 102.0s; readback=None; events=['2026-09-24T12:17:25Z app_oom (warning)', '2026-09-24T12:17:55Z app_oom (warning)', '2026-09-24T12:18:32Z app_stopped_unhealthy (warning)']
|
||||
@@ -28,3 +28,6 @@ ROWS TO FILE: R-668 (Tier-2 target on a missing path, fixed); applied-meta after
|
||||
- 13:07 FOUND (Part C read of the chain): demo-hp's thin pool `local-lvm` 100 % FULL (out_of_data_space, error_if_no_space) since 10:35 CEST. Cause (agent journal, C-04): the SCHEDULED restore-test at 10:29 restored 9201's 22 GiB archive into the SAME pool as scratch guest 990000 with no free-space check; start failed; teardown failed („filesystem in use") → "left for Recover", and Recover runs only at agent start. The agent logged „a full pool corrupts every guest on it" every few seconds and did nothing else. 9201's controller: „no space left on device" from 10:38 CEST, its docker log stops 10:39. 9201 also carried a stale `snapshot-delete` lock; its whole-box backups failed 06:59–08:22 (CT is locked). Before tonight's run; not caused by it (9202 lives on nvme-scratch).
|
||||
- 13:09 INTERVENTION 1: `systemctl restart felhom-agent` on demo-hp so the agent's own Recover tears the scratch down (a direct `pct destroy` was refused by the session's permission check). Result (C-05): „recover: destroyed leaked restore-test scratch guest" vmid=990000; pool 100 % → 58.91 %, state rw; 9201's lock gone. A further read of the morning vzdump task logs was refused by the permission check — left for the operator.
|
||||
ROWS TO FILE (agent, P1): restore-test fills the production pool (no space check) and its leaked scratch waits for an agent restart; the pool-fill WARN has no action; 9201 stale snapshot-delete lock blocked whole-box backups all morning.
|
||||
- 13:45 Part E round 1 (oom_app × power cut): OOM storm counted again after the boot, stopped +185 s; events app_oom_storm (error) + app_stopped_unhealthy (warning). PASS.
|
||||
- 13:49 Part E round 2 (install × docker restart): the restart killed the controller mid-deploy; n8n came back NOT installed, no event, no page message; leftovers app.yaml/applied files in the stack dir. FINDING (row). n8n reinstalled through the product (211 s, leftovers did not block) so round 10 has its step.
|
||||
- 14:04 Part E round 3 (cutoff file app × power cut at verifying): after the boot the update RESUMED, undo found the cut copy → HELD naming the second drive (whole) → whole restore 37 s → account + files read back. PASS. BUT the hold named the Tier-2 copy from 13:04, not a fresh one — the update's own backup did not refresh Tier 2 (to reproduce in round 11); the pre-cut controller log was lost with the container (runner now saves it at arm time).
|
||||
|
||||
@@ -103,7 +103,7 @@ def readback(app, s):
|
||||
"files": nf.verify_files(w, SUB[app], A, {names[0]: S["files"][names[0]], names[2]: S["files"][names[2]]}, w.say)}
|
||||
if not A:
|
||||
return {"A": None, "note": "no seed recorded"}
|
||||
w.wait_app(SUB[app], "/", tries=90, delay=4)
|
||||
w.wait_app(SUB[app], "/", want=("200", "302", "303", "307", "401", "403"), tries=90, delay=4)
|
||||
return {"A": bool(FX[app].verify(w, SUB[app], A, w.say))}
|
||||
|
||||
|
||||
@@ -185,6 +185,11 @@ class Arm:
|
||||
self.note["accident"] = f"POST /api/backup/run -> {code} {str(d)[:160]} at {time.strftime('%H:%M:%S')}"
|
||||
w.say(" >>> " + self.note["accident"])
|
||||
return
|
||||
# R-320: the box's log off the machine BEFORE the accident — round 3's power cut replaced the controller
|
||||
# container and took the pre-cut lines with it. Only from the main thread: walk.guest shares one temp file.
|
||||
if threading.current_thread() is threading.main_thread():
|
||||
open(os.path.join(EVD, f"round-{self.n:02d}-controller-pre.log"), "w").write(
|
||||
w.guest(f"docker logs --since {self.note['started']} felhom-controller 2>&1 | grep -vE 'auth: valid session|router.go:81|Status refresh' | tail -3000"))
|
||||
json.dump({"round": self.n, "kind": self.kind, "at": time.time(), "why": why},
|
||||
open(os.path.join(EVD, f"arm-{self.n:02d}.json"), "w"))
|
||||
|
||||
@@ -216,8 +221,14 @@ def wait_controller(cap=900):
|
||||
# ------------------------------------------------------------------------------------------ actions
|
||||
def a_unhealthy_install(app, note, arm, t0):
|
||||
"""crash_loop / oom_app: install the drill app through the product; the box must stop it by itself."""
|
||||
for _ in range(12): # the drill template must be on the box first (attempt 0 of round 1: "not found")
|
||||
w.sync_rescan()
|
||||
if w.ctl("GET", f"/api/stacks/{app}/deploy-fields")[0] == "200":
|
||||
break
|
||||
time.sleep(5)
|
||||
vals = w.deploy_values(app, app)
|
||||
code, d = w.ctl("POST", f"/api/stacks/{app}/deploy", {"values": vals})
|
||||
w.say(f" deploy -> {code} {str(d)[:120]}")
|
||||
note["act"] = f"deploy -> {code}"
|
||||
threading.Timer(20, arm, args=("20 s after the install",)).start()
|
||||
return steady(app, t0, cap=1500, until=lambda st: st.get("hold_kind") == "unhealthy_stop")
|
||||
@@ -262,7 +273,7 @@ def a_install(app, note, arm, t0, s):
|
||||
return secs, st
|
||||
|
||||
|
||||
def a_update(app, note, arm, t0, on_verify=None):
|
||||
def a_update(app, note, arm, t0, on_verify=None, arm_at_starting=False):
|
||||
code, d = w.ctl("POST", f"/api/stacks/{app}/update")
|
||||
note["act"] = f"Update -> {code} {str(d)[:140]}"
|
||||
w.say(" " + note["act"])
|
||||
@@ -281,7 +292,7 @@ def a_update(app, note, arm, t0, on_verify=None):
|
||||
if on_verify:
|
||||
on_verify()
|
||||
arm("at verifying")
|
||||
if ph == "starting":
|
||||
if ph == "starting" and arm_at_starting:
|
||||
arm("at starting")
|
||||
if st and not st.get("updating") and ph in ("done", "failed", "undone") and time.time() - t0 > 3:
|
||||
break
|
||||
@@ -352,7 +363,7 @@ def a_ladder_step(app, note, arm, t0, s):
|
||||
st = w.stack(app)
|
||||
note["steps_left_before"] = st.get("ladder_steps_left")
|
||||
note["pinned_before"] = (st.get("app_config") or {}).get("pinned_images")
|
||||
r = a_update(app, note, arm, t0)
|
||||
r = a_update(app, note, arm, t0, arm_at_starting=True)
|
||||
w.sync_rescan()
|
||||
st = w.stack(app)
|
||||
note["steps_left_after"] = st.get("ladder_steps_left")
|
||||
@@ -443,8 +454,29 @@ def run_round(n):
|
||||
w.say(f"==== ROUND {n} END: steady in {note['time_to_steady_s']}s; readback={note['readback']}; events={note['events']}")
|
||||
|
||||
|
||||
def collect(n, t_iso, extra):
|
||||
"""Finish a round whose runner was stopped: the same five observations, no action."""
|
||||
s = load()
|
||||
sched = {r["round"]: r for r in schedule()}[n]
|
||||
app = TARGET[n]
|
||||
w.login()
|
||||
note = {"round": n, **sched, "app": app, "started": t_iso, "collected_by_hand": True, **extra}
|
||||
note["after"] = household(app)
|
||||
if not w.stack(app).get("deployed"):
|
||||
note["after"]["leftovers"] = w.guest(f"docker ps -a --filter label=com.docker.compose.project={app} --format '{{{{.Names}}}} {{{{.Status}}}}'; docker volume ls -q | grep '^{app}_' || true; ls /opt/docker/stacks/{app}/ 2>/dev/null || true").strip()
|
||||
note["readback"] = readback(app, s)
|
||||
note["events"] = events_since(t_iso)
|
||||
note["box_log"] = box_log(t_iso, app)
|
||||
open(os.path.join(EVD, f"round-{n:02d}-controller.log"), "w").write(
|
||||
w.guest(f"docker logs --since {t_iso} felhom-controller 2>&1 | grep -vE 'auth: valid session|router.go:81|Status refresh' | tail -3000"))
|
||||
json.dump(note, open(os.path.join(EVD, f"round-{n:02d}.json"), "w"), indent=2, ensure_ascii=False, default=str)
|
||||
w.say(f"==== ROUND {n} COLLECTED: after={json.dumps(note['after'], ensure_ascii=False)[:400]} events={note['events']}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if sys.argv[1] == "setup":
|
||||
if sys.argv[1] == "collect":
|
||||
collect(int(sys.argv[2]), sys.argv[3], json.loads(sys.argv[4]) if len(sys.argv) > 4 else {})
|
||||
elif sys.argv[1] == "setup":
|
||||
setup()
|
||||
elif sys.argv[1] == "round":
|
||||
run_round(int(sys.argv[2]))
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env python3
|
||||
"""After round 2 (the install lost to a docker restart): install n8n again through the product, with no accident,
|
||||
so round 10 has its ladder step. Also shows whether the lost install's leftovers block a fresh one."""
|
||||
import json, sys, time
|
||||
sys.path.insert(0, ".")
|
||||
import walk as w
|
||||
import chaos as c
|
||||
s = c.load()
|
||||
w.login()
|
||||
comp = f"{w.DRILL}/templates/n8n/docker-compose.yml"
|
||||
w.say("drill n8n image line: " + [l for l in open(comp).read().split("\n") if "image:" in l][0].strip())
|
||||
w.sync_rescan()
|
||||
t0 = time.time()
|
||||
ok = w.deploy("n8n", c.SUB["n8n"])
|
||||
st = w.stack("n8n")
|
||||
w.say(f"deploy ok={ok} in {round(time.time()-t0)} s pinned={(st.get('app_config') or {}).get('pinned_images')}")
|
||||
w.wait_app(c.SUB["n8n"], "/", tries=90, delay=4)
|
||||
A = c.FX["n8n"].seed(w, c.SUB["n8n"], w.say)
|
||||
s.setdefault("apps", {}).setdefault("n8n", {})["A"] = A
|
||||
c.save(s)
|
||||
head = s.get("heads", {}).get("n8n")
|
||||
if head:
|
||||
c.drill(lambda: open(comp, "w").write(head), "n8n back to the head (2 steps offered)")
|
||||
w.sync_rescan(); time.sleep(3); w.sync_rescan()
|
||||
st = w.stack("n8n")
|
||||
w.say(f"steps_left={st.get('ladder_steps_left')} badge={w.badges('n8n')['en'][:1]}")
|
||||
open("../E/round-02b-reinstall.log", "w").write("\n".join(w.LOG) + "\n")
|
||||
Reference in New Issue
Block a user