我有一个由 Laravel 提供支持的 Web 应用程序,该应用程序已在 AWS ECS 上设置。我需要将 artisan 命令作为 cronjob 运行。
我正在查看 ECS 集群配置中的“计划任务”。我可以按照“计划任务 (Cron)“AWS 上的文档。我在目标中使用 Laravel 的任务定义,它用于 Web 服务,它有两个任务。
- 不确定如何调用 artisan 命令
- 计划任务似乎永远运行下去
任何帮助都将不胜感激。谢谢。
答案1
我不熟悉 Laravel 或 Artisan,但基本上你需要:
- 创建容器镜像你的工作(工匠)
- 创建任务定义运行工匠调用时容器
- 创建 cron 调度程序调用上述任务定义
关于“计划任务似乎永远运行下去”-ECS 任务完成其工作然后退出并且不会重新启动(例如 cron 作业)。ECS 服务退出时会重新启动(例如 Web 服务器)。请确保您正在创建一个任务而不是服务。那么它应该会永远运行下去。
希望有帮助:)