【发布时间】:2023-03-09 05:30:01
【问题描述】:
我正在尝试安排运行 jenkins slave 的 docker 在每次桌面重新启动时自动重新启动。
-
使用简单脚本通过 crontab 检查调度任务
for i in
seq 1 10000;do touch $i.stam && sleep 1;done
并使用 crontab -e 将其添加到自动重启
@reboot /root/script.sh
按预期工作 - 脚本在重新启动后立即启动
- 手动检查 docker_run 命令
docker_run.sh 脚本运行命令
docker run -it -u jenkins:jenkins -v /home/jenkins/.ssh/:/home/jenkins/.ssh/ -v /root/docker-jnlp-slave/.aws/:/home/jenkins/.aws/ jenkins/jnlp-slave:latest
按预期工作 - 运行整个 docker run 命令并将其保存为 docker_run.sh 脚本时
-
太好了 - 让我们将 docker run 复制到 crontab 中*
@reboot /root/docker-jnlp-slave/docker_run.sh >/dev/null 2>&1
但是,什么都没有发生
【问题讨论】:
-
您是否尝试在 docker 命令中添加“--restart always”?检查docs.docker.com/config/containers/…
-
您需要 1) 正确格式化您的代码(编辑页面上有格式化辅助工具)。 2) 提供更多信息(您的 docker 命令、完整的 sh 脚本、您从根系统邮箱中的 cron 获得的任何错误......)。此外,这可能被视为off topic,可能更适合superuser.com
-
--restart 标志将用于容器,以防容器出现问题,但我需要的是自动启动 docker,以防桌面 (vm) 关闭
标签: docker ubuntu jenkins cron