上周,我不得不从Docker Swarm集群中删除发生故障的节点,而使在该节点上运行的某些任务处于所需状态“删除”。
即使在删除堆栈并使用相同的名称重新创建堆栈之后,docker stack ps stackname
仍会显示它们。
这是到目前为止我尝试“清理”堆栈的方法:
docker container prune
docker volume prune
docker system prune
是否可以删除特定任务?
以下是列表中的第一个任务docker inspect fkgz0oihexzs
的输出:
[
{
"ID": "fkgz0oihexzsjqwv4ju0szorh",
"Version": {
"Index": 14422171
},
"CreatedAt": "2018-11-05T16:15:31.528933998Z",
"UpdatedAt": "2018-11-05T16:27:07.422368364Z",
"Labels": {},
"Spec": {
"ContainerSpec": {
"Image": "redacted",
"Labels": {
"com.docker.stack.namespace": "redacted"
},
"Env": [
"redacted"
],
"Privileges": {
"CredentialSpec": null,
"SELinuxContext": null
},
"Isolation": "default"
},
"Resources": {},
"Placement": {
"Platforms": [
{
"Architecture": "amd64",
"OS": "linux"
}
]
},
"Networks": [
{
"Target": "3i998stqemnevzgiqw3ndik4f",
"Aliases": [
"redacted"
]
}
],
"ForceUpdate": 0
},
"ServiceID": "g3vk9tgfibmcigmf67ik7uhj6",
"Slot": 1,
"Status": {
"Timestamp": "2018-11-05T16:15:31.528892467Z",
"State": "new",
"Message": "created",
"PortStatus": {}
},
"DesiredState": "remove"
}
]
答案 0 :(得分:0)
我有同样的问题。我在this instructions之后解决了这个问题:
docker run --rm -v /var/run/docker/swarm/control.sock:/var/run/swarmd.sock dperny/tasknuke <taskid>
请确保使用完整的长任务ID,否则将无法正常工作(在您的情况下为fkgz0oihexzsjqwv4ju0szorh
)。