通过 EventBridge / Crond 在 fargate 容器中调用 ftp 命令

Invoke ftp command in fargate container by EventBridge / Crond

我想做的在aws上是这样的

  1. 每小时执行ftp命令并获取sql文件
  2. 推送文件到RDS。

一开始我的想法是

然而,无服务器 fargate 由 crond 工作......?

所以第二个想法是

可能吗?

我想知道我是否可以 运行 fargate 上容器中的命令 EventBridge??

第一步是编写一个 bash 脚本来执行 FTP 和 SQL 命令。然后创建一个包含 bash 脚本和任何依赖项(例如 mysqlpsql)的容器映像。容器镜像将配置为 bash 脚本作为入口点。这意味着每次启动此容器的实例时,它都会执行 FTP 和 SQL 命令,然后退出。

请注意,此时 ftp 和 SQL 之类的所有命令都是如何在映像中完全配置的,不需要像 EventBridge 这样的外部服务将命令本身推送到容器。如果需要传入一些配置,例如 FTP 服务器名称或 RDS 主机名,则应将它们作为环境变量传入容器。

最后,为了 运行 在 ECS Fargate 上每小时执行一次此操作,您将在 ECS 中配置任务定义,然后配置一个 AWS ECS Scheduled Task,它使用 EventBridge,每小时 cron触发表达式。