如何在本地运行一次性Docker容器(从容器内触发)

And*_*dré 10 heroku amazon-ecs docker aws-fargate

在Heroku上托管应用程序时,我经常通过代码中的Heroku API触发一次性dynos,以便在后台进行繁重的工作.我最近在AWS上设置了一些堆栈,并使用AWS ECS运行任务遵循类似的模式.

我没有使用长时间运行的队列工作程序,因为硬件资源根据特定任务而变化很大,并且通常工作负载发生在峰值中.

对于本地开发,我通常通过在正在运行的容器中执行后台任务或从控制台手动触发后台命令来跳过此主题.在本地运行一次性容器的好方法是什么?

sto*_*obi 0

ECS 支持计划任务,如果您知道计划的峰值时间,则可以使用计划任务按计划启动 Fargate 容器。

如果您不这样做,我们所做的就是编写一个小型 API Gateway -> Lambda 函数,该函数基本上动态启动 Fargate 容器,其中包含在 API 网关端点的 POST 中定义的一些变量,例如 CPU/Mem/port 等...或者 pre - 创建任务定义并将任务定义传递给 api,如果您知道容器的大部分“设置”应该是什么,那么这是另一个选择。