dokploy/apps
Ilyas Oruc 568945e768 fix(server): pin locally-built swarm services to the build node
A locally built application image (git/dockerfile/buildpacks, no registry
configured) only exists on the node that built it. The swarm service is
created with no placement constraint, so on a multi-node swarm the
scheduler can place a task on another node that lacks the image. That task
is rejected with "No such image" while the previous task keeps running, so
the deployment reports success ("done") but the app is never updated.

Pin such services to the build node by adding a `node.id==<build node>`
placement constraint (resolved from the deploy connection's
`docker info` Swarm.NodeID), mirroring how bind mounts are already pinned.
Only applied for locally-built images and only when the user has not
configured their own placement; images pushed to a registry and external
(docker) images are unaffected.
2026-07-14 21:41:26 +03:00
..
api Feat/tailwind v4 shadcn update (#4706) 2026-06-30 15:45:23 -06:00
dokploy fix(server): pin locally-built swarm services to the build node 2026-07-14 21:41:26 +03:00
monitoring fix: enhance container metrics query to support wildcard matching for container names 2026-03-08 16:16:45 -06:00
schedules Feat/tailwind v4 shadcn update (#4706) 2026-06-30 15:45:23 -06:00