Add `--no-trunc` option to `docker stack deploy` for full error messages
Description
Problem
When running docker stack deploy, deployment errors (especially scheduling constraint failures) are truncated in the CLI output. For example:
1/1: no suitable node (scheduling constraints not satisfied on 1 node; host-mod…
overall progress: 0 out of 1 tasks
This truncation makes it difficult to understand why a service could not be scheduled, as the most relevant part of the message is often cut off. This behavior appears to be hardcoded and does not respect terminal width or environment variables like COLUMNS.
Workarounds
- Manually running
docker service ps <service> --no-truncafter deployment - Inspecting tasks individually with
docker inspect - Writing custom scripts to combine deployment and diagnostic commands
These add friction and delay in understanding deployment issues.
Proposal
Add a --no-trunc flag to docker stack deploy, similar to the one already available in docker service ps, which disables truncation of deployment status and error messages.
Other alternatives could include:
- Respecting the actual terminal width or
COLUMNSenvironment variable - Automatically disabling truncation when output is non-interactive (e.g. in CI pipelines)
- Supporting full output when
--verboseor--debugis enabled
Benefits
- Immediate visibility into deployment failures without requiring follow-up commands
- Better support for CI/CD pipelines where error visibility is critical
- Makes
docker stack deployconsistent with other CLI commands that support--no-trunc
Related
docker service psalready supports--no-truncand behaves as expected- No current CLI flags exist to control truncation during stack deployment
@Ibmurai can i work on this ?