在 AWS ECS 中运行 cronjob 的最佳方法是什么?

在 AWS ECS 中运行 cronjob 的最佳方法是什么?

我有一个由 Laravel 提供支持的 Web 应用程序,该应用程序已在 AWS ECS 上设置。我需要将 artisan 命令作为 cronjob 运行。

我正在查看 ECS 集群配置中的“计划任务”。我可以按照“计划任务 (Cron)“AWS 上的文档。我在目标中使用 Laravel 的任务定义,它用于 Web 服务,它有两个任务。

  1. 不确定如何调用 artisan 命令
  2. 计划任务似乎永远运行下去

任何帮助都将不胜感激。谢谢。

答案1

我不熟悉 Laravel 或 Artisan,但基本上你需要:

  1. 创建容器镜像你的工作(工匠
  2. 创建任务定义运行工匠调用时容器
  3. 创建 cron 调度程序调用上述任务定义

关于“计划任务似乎永远运行下去”-ECS 任务完成其工作然后退出并且不会重新启动(例如 cron 作业)。ECS 服务退出时会重新启动(例如 Web 服务器)。请确保您正在创建一个任务而不是服务。那么它应该会永远运行下去。

希望有帮助:)

相关内容