NAME
API::Docker::Type::TaskSpec::Placement - Where in the swarm a task may be scheduled
VERSION
version 0.004
DESCRIPTION
Generated from the inline Placement schema of the TaskSpec definition in spec/v1.51.yaml, which the swagger leaves undescribed. Hard constraints, soft preferences, the platforms the task can run on, and a cap on how many replicas one node may take.
constraints
An array of constraint expressions to limit the set of nodes where a task can be scheduled. Constraint expressions can either use a match (==) or exclude (!=) rule. Multiple constraints find nodes that satisfy every expression (AND match). Constraints can match node or Docker Engine labels as follows:
node attribute | matches | example ---------------------|--------------------------------|----------------------------------------------- node.id | Node ID | node.id==2ivku8v2gvtg4 node.hostname | Node hostname | node.hostname!=node-2 node.role | Node role (manager/worker) | node.role==manager node.platform.os | Node operating system | node.platform.os==windows node.platform.arch | Node architecture | node.platform.arch==x86_64 node.labels | User-defined node labels | node.labels.security==high engine.labels | Docker Engine's labels | engine.labels.operatingsystem==ubuntu-24.04
engine.labels apply to Docker Engine labels like operating system, drivers, etc. Swarm administrators add node.labels for operational purposes by using the [node update endpoint](#operation/NodeUpdate).
preferences
Preferences provide a way to make the scheduler aware of factors such as topology. They are provided in order from highest to lowest precedence. See API::Docker::Type::TaskSpec::Placement::Preference.
max_replicas
Maximum number of replicas for per node (default value is 0, which is unlimited).
platforms
Platforms stores all the platforms that the service's image can run on. This field is used in the platform filter for scheduling. If empty, then the platform filter is off, meaning there are no scheduling restrictions. See API::Docker::Type::Platform.
SUPPORT
Issues
Please report bugs and feature requests on GitHub at https://github.com/Getty/p5-api-docker/issues.
CONTRIBUTING
Contributions are welcome! Please fork the repository and submit a pull request.
AUTHOR
Torsten Raudssus <getty@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.