从 crontab 运行 docker-compose

问题描述 投票:0回答:1

我有命令

docker-compose -f docker-compose-deploy.yml run --rm app sh -c "python manage.py runcrons"

如果我从终端运行它就可以了。现在我想从 crontab 运行这个命令,但我有点不知道应该如何编写这个命令。根据我在这里找到的东西,我尝试了很多东西:

*/5 * * * * cd /home/ec2-user/legend-of-solgard; docker-compose -f docker-compose-deploy.yml run --rm app sh -c“python 管理 runcrons”

*/5 * * * * /usr/bin/docker-compose -f /home/ec2-user/legend-of-solgard/docker-compose-deploy.yml exec -T app run --rm app sh -c “python 管理 runcrons”

但是没有任何作用。

django docker-compose cron
1个回答
0
投票

我不完全确定你想做什么,但奥菲莉亚也许能做你想做的事。它有点类似于 cron,因为你可以在 docker-compose 文件中指定命令的计划,我的配置如下:

ofelia:
    image: mcuadros/ofelia:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    depends_on:
      - backend
    command: daemon --docker
    labels:
      - ofelia.job-exec.enable=true
      - ofelia.job-exec.backend.schedule=0 0,20,40 7-23 * * *
      - ofelia.job-exec.backend.command=python /home/app/web/manage.py runcrons
      - ofelia.job-exec.backend.container=backend

另请查看此处的文档:https://github.com/mcuadros/ofelia

当然您可以根据自己的喜好更改时间表

© www.soinside.com 2019 - 2024. All rights reserved.