-
db5c0250d6
fix(traefik): trust coolify network in vpn-only allowlist
main
valknar
2026-08-30 10:23:26 +00:00
-
7e8dca4cf5
bump coolify-realtime to latest

valknarandClaude Sonnet 5
2026-08-29 23:56:54 +02:00
-
912806dfc9
remove sexy stack

valknarandClaude Sonnet 5
2026-08-26 11:38:13 +02:00
-
5880b9cd58
Add sexy stack (Bluetooth toy control console)

valknarandClaude Sonnet 5
2026-08-25 16:55:29 +02:00
-
483a323201
remove code-server stack, add vpinball.pivoine.art web app link

valknarandClaude Sonnet 5
2026-08-24 16:14:02 +02:00
-
21a8ae3897
Revert "fix(gitea): revert cache workarounds, rely on CONFIG_FILE fix instead"
valknar
2026-08-24 12:02:47 +02:00
-
b62b9b1871
fix(gitea): revert cache workarounds, rely on CONFIG_FILE fix instead
valknar
2026-08-24 12:00:57 +02:00
-
50b7ee1b5c
fix(gitea): migrate to gitea/runner image, fix daemon config not loading
valknar
2026-08-24 11:55:54 +02:00
-
79f0c1a293
fix(gitea): cache-server needs external_secret, not external_secret_file
valknar
2026-08-24 11:39:06 +02:00
-
e1a540f110
fix(gitea): bypass run.sh entrypoint for the cache-server container
valknar
2026-08-24 11:30:22 +02:00
-
0d85ef73b9
fix(gitea): runner config for caching 4
valknar
2026-08-24 11:26:54 +02:00
-
99ff1c0c4e
fix: wrong act runner config
valknar
2026-08-24 09:12:42 +00:00
-
6353f662fa
fix(gitea): runner config for caching 3
valknar
2026-08-24 11:08:48 +02:00
-
5b00a9809d
fix(gitea): runner config for caching 2
valknar
2026-08-24 10:58:15 +02:00
-
30ac8954ad
fix(gitea): runner config for caching
valknar
2026-08-24 10:30:33 +02:00
-
9af932cd70
chore(obsidian): drop blog reference link from local.ini.example

valknarandClaude Sonnet 5
2026-08-20 21:01:29 +02:00
-
a9f9a6765b
feat(obsidian): add CouchDB stack for Obsidian LiveSync sync

valknarandClaude Sonnet 5
2026-08-20 20:54:55 +02:00
-
00cc3583ec
fix(traefik): stop fail2ban banning legit traffic on stray 4xx

valknarandClaude Sonnet 5
2026-08-19 18:44:20 +02:00
-
f151cd9aae
fix(gitea): color ui warning/success/error/info message text, not just header

valknarandClaude Sonnet 5
2026-08-19 18:35:13 +02:00
-
d80358e238
fix(pulsenode): use coder icon for Code Server, globe for Web Apps

valknarandClaude Sonnet 5
2026-08-18 10:31:43 +02:00
-
d9a0a902e3
feat(pulsenode): rename Infra to System, add Services/Web Apps quick-link bookmarks

valknarandClaude Sonnet 5
2026-08-18 10:17:03 +02:00
-
4ffa078da0
feat(pulsenode): move traefik into Services as a service widget
valknar
2026-08-17 21:34:36 +02:00
-
ad245518ba
feat(pulsenode): split Infra/Services groups, add traefik icon+href
valknar
2026-08-17 21:23:21 +02:00
-
336a5e46b8
feat(pulsenode): switch coolify/gitea/immich/n8n/headscale to service widgets
valknar
2026-08-17 21:05:12 +02:00
-
4c439a4deb
fix(traefik): restore --ping=true, causing the dashboard to vanish
valknar
2026-08-17 20:22:35 +02:00
-
6a03d2698f
chore: re-enable dashboard
valknar
2026-08-17 20:14:47 +02:00
-
e7368f0eda
chore(traefik): remove dangling traefik-internal router labels
valknar
2026-08-17 20:11:36 +02:00
-
b77a65119b
fix: claude mess 2
valknar
2026-08-17 18:09:01 +00:00
-
dccbd22020
fix: claude mess
valknar
2026-08-17 17:49:42 +00:00
-
3761924242
fix(traefik): expose API on an internal-only entrypoint for container-to-container access
valknar
2026-08-17 19:29:43 +02:00
-
bed01b4fdf
streamline traefik dashboard routing: docker labels instead of file provider
valknar
2026-08-17 19:05:08 +02:00
-
5d6a752f71
expose Traefik dashboard on traefik.pivoine.art, vpn-only gated
valknar
2026-08-17 18:56:53 +02:00
-
b0dba5bf40
fix(traefik): explicitly define the traefik entrypoint on :8080
valknar
2026-08-17 18:48:41 +02:00
-
f207009efd
add system and traefik widgets to pulsenode; enable Traefik API
valknar
2026-08-17 18:46:51 +02:00
-
858d20e16e
remove Mailpit from pulsenode dashboard
valknar
2026-08-17 18:22:49 +02:00
-
5fc922b477
simplify pulsenode dashboard: one Services group, no db/search/discovery
valknar
2026-08-17 18:19:39 +02:00
-
83056e0fdc
sync pulsenode config.yml: brand icons, drop stale accent override
valknar
2026-08-17 18:02:05 +02:00
-
d7ba6ec040
fix(headscale): add MagicDNS override for pulsenode.pivoine.art
valknar
2026-08-17 16:02:29 +02:00
-
318f48036d
refactor: move vpn-only middleware from falcon.yaml to security.yaml
valknar
2026-08-17 15:54:40 +02:00
-
1c5ee1002a
feat: add pulsenode stack
valknar
2026-08-17 15:42:08 +02:00
-
6e96e33875
feat(traefik,headscale): restrict falcon.pivoine.art to Tailscale mesh only
valknar
2026-08-16 16:51:53 +02:00
-
184200299d
feat(traefik): route *.falcon.pivoine.art to apps on falcon over Tailscale
valknar
2026-08-16 16:32:21 +02:00
-
4951492f4c
feat(headscale): add self-hosted Tailscale control server stack

valknarandClaude Sonnet 5
2026-08-16 15:55:36 +02:00
-
aaa4564a0b
revert(gitea): remove custom images, use default Gitea logo

valknarandClaude Sonnet 4.6
2026-06-29 19:27:12 +02:00
-
824c78535b
fix(gitea): transparent background, flower maximized to fill square

valknarandClaude Sonnet 4.6
2026-06-29 19:01:14 +02:00
-
b46f553457
feat(gitea): replace icons with square Catppuccin Frappé peony icon

valknarandClaude Sonnet 4.6
2026-06-29 18:52:35 +02:00
-
66536adde7
fix(gitea): set default theme to catppuccin-frappe-blue

valknarandClaude Sonnet 4.6
2026-06-29 18:04:21 +02:00
-
9065421264
feat(gitea): replace custom themes with Catppuccin v1.0.2

valknarandClaude Sonnet 4.6
2026-06-29 18:01:35 +02:00
-
ec92d55e3c
fix(mailpit): bind UI to port 8025 so healthcheck passes; revert email FROM changes

valknarandClaude Sonnet 4.6
2026-06-27 19:34:40 +02:00
-
1be281ec97
fix(mail): change FROM address to hi@pivoine.art for IONOS relay compatibility

valknarandClaude Sonnet 4.6
2026-06-27 19:09:00 +02:00
-
7ae681cc83
docs(stacks): update README — stacks.sh moved to scripts repo, use stacks alias

valknarandClaude Sonnet 4.6
2026-06-20 15:53:16 +02:00
-
056db5d6ea
refactor(stacks): move stacks.sh to ~/scripts repo

valknarandClaude Sonnet 4.6
2026-06-20 15:47:30 +02:00
-
a7a3fb8582
fix(stacks): show correct status when backup service has failed

valknarandClaude Sonnet 4.6
2026-06-20 02:21:44 +02:00
-
04a79ea198
fix(stacks): show correct status when update service has failed

valknarandClaude Sonnet 4.6
2026-06-20 02:21:00 +02:00
-
a08c5fca39
fix(stacks): prevent update run from aborting when images not in local cache

valknarandClaude Sonnet 4.6
2026-06-20 02:17:49 +02:00
-
f65034a2e2
refactor(gitea): move VPS IPv4 address to .env as VPS_IPV4

valknarandClaude Sonnet 4.6
2026-06-17 20:42:26 +02:00
-
fa0f5cba4b
fix(gitea): update SSH_PORT to 22 to match new external port

valknarandClaude Sonnet 4.6
2026-06-17 20:27:01 +02:00
-
8797a42d61
fix(gitea): bind SSH explicitly to IPv4 to avoid conflict with sshd on IPv6

valknarandClaude Sonnet 4.6
2026-06-17 20:25:59 +02:00
-
1e5d5254a6
feat(gitea): expose SSH on port 22

valknarandClaude Sonnet 4.6
2026-06-17 20:25:42 +02:00
-
0f943b5a62
fix(coolify): switch PHP-FPM from ondemand to dynamic mode

valknarandClaude Sonnet 4.6
2026-06-17 11:06:07 +02:00
-
8d33836714
fix(gitea): block scraper IP and add rate limiting

valknarandClaude Sonnet 4.6
2026-06-17 10:27:56 +02:00
-
3265d69a6c
fix(traefik): upgrade fail2ban plugin to v0.9.0 and fix config schema

valknarandClaude Sonnet 4.6
2026-06-17 10:09:37 +02:00
-
586f137cf9
feat(traefik): add fail2ban plugin with global middleware

valknarandClaude Sonnet 4.6
2026-06-17 10:05:11 +02:00
-
b69951f917
fix(help): align update subcommands and add backup descriptions

valknarandClaude Sonnet 4.6
2026-06-16 23:49:57 +02:00
-
d7829cb5ae
docs: fix README backup/update/notifications sections

valknarandClaude Sonnet 4.6
2026-06-16 21:13:00 +02:00
-
8ae9c9e878
fix(update): compare local image store IDs, not running container IDs

valknarandClaude Sonnet 4.6
2026-06-16 21:09:56 +02:00
-
fcff6f3298
refactor: absorb _backup and _update into stacks.sh

valknarandClaude Sonnet 4.6
2026-06-16 20:56:04 +02:00
-
e3cd2df372
docs: document stacks.sh in README

valknarandClaude Sonnet 4.6
2026-06-16 19:55:05 +02:00
-
067d017ea6
feat(stacks): add --static flag to completion command

valknarandClaude Sonnet 4.6
2026-06-16 19:52:55 +02:00
-
3251f27edb
feat: add stacks.sh stack manager CLI

valknarandClaude Sonnet 4.6
2026-06-16 19:13:43 +02:00
-
cf32e669cb
fix(gitea): use .RunModeIsProd and hardcode Umami values in header template

valknarandClaude Sonnet 4.6
2026-06-16 10:34:21 +02:00
-
e613d766ec
fix(gitea): revert to UMAMI_ID/UMAMI_SRC and use .UmamiSrc/.UmamiId template vars

valknarandClaude Sonnet 4.6
2026-06-16 10:26:39 +02:00
-
53608a7195
fix(gitea): use .UmamiSrc/.UmamiScript template vars for Umami analytics

valknarandClaude Sonnet 4.6
2026-06-16 10:24:57 +02:00
-
735adfabea
feat(gitea): add conditional Umami analytics via env vars in header

valknarandClaude Sonnet 4.6
2026-06-16 10:17:19 +02:00
-
a9eb3de90d
docs: add code stack to README

valknarandClaude Sonnet 4.6
2026-06-12 18:18:17 +02:00
-
c27a012d54
fix(code): consolidate volumes into single /home/coder mount

valknarandClaude Sonnet 4.6
2026-06-12 18:05:43 +02:00
-
d367540eac
fix(code): mount workspace volume to /home/coder/workspace

valknarandClaude Sonnet 4.6
2026-06-12 18:01:19 +02:00
-
c0aa3acbfc
fix(code): mount workspace volume to /home/coder for full home persistence

valknarandClaude Sonnet 4.6
2026-06-12 17:59:53 +02:00
-
d9bbfea9c4
fix(code): remove separate workspace volume

valknarandClaude Sonnet 4.6
2026-06-12 17:53:22 +02:00
-
27c9e1c8a5
feat(code): add code-server stack with Traefik and Anthropic API support

valknarandClaude Sonnet 4.6
2026-06-12 17:31:58 +02:00
-
d4327bd152
fix(update): detect real image changes and improve webhook messages

valknarandClaude Sonnet 4.6
2026-06-12 07:58:55 +02:00
-
2130069836
fix(update): set executable bit on update.sh in git index

valknarandClaude Sonnet 4.6
2026-06-12 07:41:24 +02:00
-
6eb603205a
fix(update): make update.sh executable and fix Pulled grep pattern

valknarandClaude Sonnet 4.6
2026-06-11 16:19:36 +00:00
-
f231dd5432
feat: externalize EMAIL_FROM and EMAIL_USER to .env for gitea and passbolt

valknarandClaude Sonnet 4.6
2026-06-10 18:38:22 +02:00
-
afec1c03f5
feat(gitea): set mailer FROM address

valknarandClaude Sonnet 4.6
2026-06-10 18:01:08 +02:00
-
9c7a34e9c0
feat: remove Affine stack

valknarandClaude Sonnet 4.6
2026-06-10 13:43:21 +02:00
-
40dfe5776a
feat(gitea): add Umami analytics via direct custom header template

valknarandClaude Sonnet 4.6
2026-06-10 12:58:25 +02:00
-
e5e6a2c302
feat(gitea): add Umami analytics via custom header template

valknarandClaude Sonnet 4.6
2026-06-10 12:49:26 +02:00
-
9c65cfc9e3
revert(passbolt): remove clock-skew patch — metadata key already created

valknarandClaude Sonnet 4.6
2026-06-09 22:48:41 +02:00
-
15ce2e3f4b
chore: remove accidentally committed log file

valknarandClaude Sonnet 4.6
2026-06-09 22:47:34 +02:00
-
300c685d50
feat: remove Vaultwarden — migrated to Passbolt

valknarandClaude Sonnet 4.6
2026-06-09 22:47:07 +02:00
-
5c398ee77c
fix(passbolt): add 300s clock-skew tolerance to key creation date check

valknarandClaude Sonnet 4.6
2026-06-09 22:16:56 +02:00
-
2e31c1dcc9
fix(passbolt): persist GPG keyring as volume to survive restarts

valknarandClaude Sonnet 4.6
2026-06-09 21:44:20 +02:00
-
6f12bf9af7
fix(passbolt): disable metadata encryption for new instance setup

valknarandClaude Sonnet 4.6
2026-06-09 21:24:51 +02:00
-
758e69300f
fix(passbolt): add TZ env var (Europe/Amsterdam)

valknarandClaude Sonnet 4.6
2026-06-09 21:06:01 +02:00
-
ae81935376
fix(passbolt): clean setup with correct GPG fingerprint

valknarandClaude Sonnet 4.6
2026-06-09 20:39:55 +02:00
-
d8cfcd23d1
fix(passbolt): fix DB hostname, encoding, and GPG fingerprint

valknarandClaude Sonnet 4.6
2026-06-09 20:14:57 +02:00
-
a1f0f7091b
feat(passbolt): add Passbolt CE stack

valknarandClaude Sonnet 4.6
2026-06-09 20:00:05 +02:00
-
31841d1ac3
fix(compose): remove empty labels keys left after watchtower label removal

valknarandClaude Sonnet 4.6
2026-06-09 19:44:01 +02:00
-
4c522961a9
feat(_update): replace watchtower with custom nightly update script

valknarandClaude Sonnet 4.6
2026-06-09 19:42:25 +02:00