我希望使用应用程序平台来托管一些自定义代码。这是一种计划类型的任务,因此根据我的理解,我想设置一个工作组件在后台运行。我已经在 DigitalOcean-AppPlatform-Cron 存储库中看到了有关使用 Docker 的 cron 的文档和存储库。
但我找不到有关此 Worker 组件的详细信息的说明。它是长期运行的资源吗?当我在互联网上搜索时,我似乎得到了不同的答案,所以我只是想确定一下。我在想,如果是的话,那么我可以在脚本中使用类似 node-cron 的东西,然后让 Worker 实例执行这个脚本,这样我就可以运行一些 cron 作业。但我很想听听这是否行不通。
提前致谢。
我实际上刚刚在应用程序平台和 Laravel 上完成了这个工作。我们遇到的问题是 AppPlatform 不支持 cron,而我们正在使用构建包。我们的解决方法是在 AppPlatform 上创建一个新组件,选择相同的存储库(这是我们的任务所在的位置),选择最小的资源大小。
部署后,我们将运行参数编辑为以下内容:
while true; do
echo "=> Running scheduler"
php artisan schedule:run || true;
echo "=> Sleeping for 60 seconds"
sleep 60;
done
如果您不使用 Laravel,请将
php artisan schedule:run || true;
替换为您需要的任何命令。
希望这有帮助!