【发布时间】:2017-05-10 21:17:33
【问题描述】:
我正在部署一个 apache 容器,它从我的 github 下载 php 代码,但该代码应该每 5 分钟运行一次,因为它会提取一个外部 API 并填充一个数据库。
我一直在阅读 openshift 中的 cron 并且确实了解脚本,但我不知道将脚本放在哪里。所有示例都在讨论如何将脚本放在以下目录中:“.openshift/cron/minutely/awesome_job”但它在哪里?????
我是否应该在本地硬盘上创建它并使用 OC 客户端从该目录部署 apache cointainer?我迷路了。
使用公共 Paas OpenShift。
【问题讨论】:
-
嗨!也许你应该按照 tuto 创建你的 cron 容器:docs.openshift.org/latest/dev_guide/cron_jobs.html。并将您要更新的卷挂载到您的 croned 容器中(使用 tuto 创建)。这样,它将直接将更改推送到您的 apache 容器中
-
向我解释一下你的脚本是如何工作的,它只会触发一个新的
git pull到克隆到你的 apache 容器中的 git 项目中吗?我也许可以尝试给你一个更具体的答案 -
部署 Apache / PHP 时,它会从 github 拉取我的应用程序代码。完成后,Openshift 将在 github 代码更改时更新。所以我的应用程序更改都有效。但是应用程序的一部分必须每 x 分钟触发一次。那就是我需要触发器运行的地方: #!/bin/sh /bin/rm -f /tmp/nest_php_* ; /usr/bin/php /var/www/nest/insert.php > /dev/null
-
用 openshift 的 crons 听起来很难做到,从你的 php 应用程序中每 5 分钟触发一次该脚本不是更容易吗?因为我在这里看不到任何其他足够干净的解决方案;)
-
那很好,但我认为 PHP 做不到 :-)
标签: openshift