【问题标题】:Crontab won't restart Docker containerCrontab 不会重启 Docker 容器
【发布时间】:2018-03-01 17:00:21
【问题描述】:

我有一个在 Root 帐户下运行的容器,我可以开始使用它:

docker start containername

我希望 crontab 启动它,所以我使用 root 用户

crontab -e

并像这样设置一个条目:

* * * * * /usr/bin/docker start containername

但它不会工作。我也试过了

* * * * * root /usr/bin/docker start containername

没有运气。

任何人都知道我怎样才能完成这项工作?

【问题讨论】:

  • 您有任何错误吗?你检查过日志吗?
  • 容器是否存在?以 root 身份检查 docker ps -a。如果未列出,则 docker start 将不起作用。您可能需要使用docker run 运行容器。但正如@Bmitch 所说,我们需要日志或错误,否则我们会猜测
  • docker start 用于启动已退出的容器,容器实际执行的是什么?

标签: docker ubuntu cron ubuntu-16.04 docker-container


【解决方案1】:

我没有任何问题,如下:

$ crontab -e

然后我设置一个容器每 5 分钟重启一次:

*/5 * * * * docker restart <containername>

【讨论】:

    【解决方案2】:

    重启docker需要sudo权限。我使用如下方法: sudo crontab -e 00 23 * * * docker 重启 dbprod

    【讨论】:

      【解决方案3】:

      有两种选择。

      docker container restart CONTAINER_NAME
      
      docker restart CONTAINER_NAME
      
      1. sudo crontab -e
      2. 0 1 * * * docker container restart CONTAINER_NAME

      你可以用下一条命令查看:

      sudo crontab -l
      

      使用 Docker 版本 19.03.6 进行测试,构建 369ce74a3c

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-02-23
        • 1970-01-01
        • 2019-11-01
        • 2016-04-02
        • 2020-09-16
        • 2021-06-24
        • 2023-02-11
        相关资源
        最近更新 更多