From fcea77986a14a1681134b3eacb758a4ced9e4f27 Mon Sep 17 00:00:00 2001 From: ClaydeCode Date: Mon, 21 Sep 2026 12:57:59 +0000 Subject: [PATCH] compose: keep traefik's file provider through a deploy The deploy job scp's this file over /home/ubuntu/clayde/docker-compose.yml before running `docker compose up -d`, so anything the VM copy has and this one lacks is silently dropped on every merge to main. The file provider and its /dynamic mount were in that category: they serve the hand-written routes for the /board and /walk backends running on the host, which returned 404 after today's deploy until the VM copy was patched back by hand. Second occurrence today. --- docker-compose.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index cd572b0..e27a1b2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -11,6 +11,8 @@ services: - --providers.docker=true - --providers.docker.exposedbydefault=false - --providers.docker.network=internal + - --providers.file.directory=/dynamic + - --providers.file.watch=true - --entrypoints.websecure.address=:443 - --entrypoints.web.address=:80 - --certificatesresolvers.le.acme.email=${CLAYDE_GIT_EMAIL} @@ -23,6 +25,9 @@ services: volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - ./data/letsencrypt:/letsencrypt + # Hand-written routes for host services that are not containers here + # (the /board and /walk backends on the host). + - ./traefik-dynamic:/dynamic:ro clayde: image: ghcr.io/claydecode/me:main restart: unless-stopped