fix(dev): unbreak Docker dev environment #25

Merged
nrupard merged 1 commit from fix/dev-docker-env into main 2026-05-04 14:30:32 +02:00
Owner
  • compose.dev.yml: switch Traefik labels from mapping to sequence form so Compose v2 interpolates ${USER} in router/service name segments. Mapping-form keys are not substituted, which left Traefik with a router referencing a service name that did not exist (chat-${USER} literal vs chat-nate expanded), producing a 404 at https://${USER}-chat.a8n.run.
  • dev/cargo, dev/cargo-desktop, dev/server-up: mount the cargo target named volume at /cargo-target with CARGO_TARGET_DIR instead of /work/target. Mounting a named volume on top of the project bind mount caused the Docker daemon (root) to auto-create an empty target/ mountpoint on the host, which then blocked subsequent docker build context reads with EACCES.
  • Add .dockerignore to keep target/, node_modules, generated CSS, VCS, and editor metadata out of the Docker build context.

Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com

- compose.dev.yml: switch Traefik labels from mapping to sequence form so Compose v2 interpolates ${USER} in router/service name segments. Mapping-form keys are not substituted, which left Traefik with a router referencing a service name that did not exist (chat-${USER} literal vs chat-nate expanded), producing a 404 at https://${USER}-chat.a8n.run. - dev/cargo, dev/cargo-desktop, dev/server-up: mount the cargo target named volume at /cargo-target with CARGO_TARGET_DIR instead of /work/target. Mounting a named volume on top of the project bind mount caused the Docker daemon (root) to auto-create an empty target/ mountpoint on the host, which then blocked subsequent docker build context reads with EACCES. - Add .dockerignore to keep target/, node_modules, generated CSS, VCS, and editor metadata out of the Docker build context. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- compose.dev.yml: switch Traefik labels from mapping to sequence form so Compose v2 interpolates ${USER} in router/service name segments. Mapping-form keys are not substituted, which left Traefik with a router referencing a service name that did not exist (chat-${USER} literal vs chat-nate expanded), producing a 404 at https://${USER}-chat.a8n.run.
- dev/cargo, dev/cargo-desktop, dev/server-up: mount the cargo target named volume at /cargo-target with CARGO_TARGET_DIR instead of /work/target. Mounting a named volume on top of the project bind mount caused the Docker daemon (root) to auto-create an empty target/ mountpoint on the host, which then blocked subsequent docker build context reads with EACCES.
- Add .dockerignore to keep target/, node_modules, generated CSS, VCS, and editor metadata out of the Docker build context.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
nrupard deleted branch fix/dev-docker-env 2026-05-04 14:30:32 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/lets-chat!25
No description provided.