下面是游牧民族的定期任务。其目的是每5分钟在主机nomad3上运行一个脚本。我还包括了下面脚本的内容。
job "periodic" {
datacenters = ["dc1"]
type = "batch"
periodic {
cron = "*/5 * * * * *"
prohibit_overlap = true
time_zone = "UTC"
}
group "periodic" {
count = 1
restart {
interval = "5m"
attempts = 10
delay = "25s"
mode = "delay"
}
task "cronjob-test" {
driver = "exec"
constraint {
attribute = "${node.unique.name}"
value = "nomad3"
}
config {
command = "/bin/bash"
args = ["/usr/local/bin/cronjob-test.sh"]
}
resources {
cpu = 100 # Mhz
memory = 10 # MB
network {
mbits = 10
# Request for a dynamic port
port "uptime" {
}
}
}
}
}
}cronjob-test.sh包含:
#!/usr/bin/env bash
DATE=$(date '+%F-%s')
touch /tmp/$DATE脚本位于游牧主机nomad3上。我应该看到一个/tmp格式的文件,格式在bash脚本中,但是我没有看到这个。正在发生的事情需要帮助。
发布于 2018-04-27 10:42:15
看来我使用的是exec驱动程序,这个驱动程序是彩色的。我试着使用raw_exec,它成功了。然后,我重新尝试使用exec,在配置中的chroot_env中添加目标目录,它也能工作。
发布于 2018-04-04 09:24:54
下面的脚本将在/tmp下面创建一个0字节文件:-
DATE=$(date '+%F-%s')
touch /tmp/$DATE //file name would be 2018-04-04-%s检查您的日期变量是否正确设置。只需添加像$DATE这样的回显命令,并检查是否接受。
发布于 2019-07-23 01:13:36
使用以下代码:
config {
command = "/bin/bash"
args = ["-c","/usr/local/bin/cronjob-test.sh"]
}https://stackoverflow.com/questions/49646850
复制相似问题