我已经尝试了一切,但无法执行exec类型的作业。我在3个不同的群集上进行了尝试,但全部失败。
该作业会修剪docker容器并仅运行docker系统prune -a
。
这是配置部分:
driver = "exec"
config {
command = "bash"
args = ["-c",
" docker system prune -a "]
}
没有日志和容器不被修剪:
job "docker-cleanup" {
type = "system"
constraint {
attribute = "${attr.kernel.name}"
operator = "="
value = "linux"
}
datacenters = ["dc1"]
group "docker-cleanup" {
restart {
interval = "24h"
attempts = 0
mode = "fail"
}
task "docker-system-prune" {
driver = "exec"
config {
command = "bash"
args = ["-c",
" docker system prune -a "]
}
resources {
cpu = 100
memory = 50
network {
mbits = 1
}
}
}
}
}
我在做什么错?
我建议您提供输出以使其更易于分析。
您可以尝试的一件事是将完整路径添加到bash可执行文件。
driver = "exec"
config {
command = "/bin/bash"
args = ["-c",
" docker system prune -a "]
}
此外,您在系统修剪中缺少“ --force”参数,如果没有它-docker system prune要求确认。
docker system prune --all --force