使用 AWS Batch 可以在作业定义中动态指定 docker 图像吗?

Using AWS Batch can a docker image be specified dynamically in a job definition?

我想在 AWS Batch 中创建因用于启动容器的映像而异的作业。我想在不为每个图像创建不同的作业定义的情况下执行此操作。是否可以使用 job definition parameters 参数化图像 属性?如果没有,实现此目标的最佳方法是什么,还是我必须在我的应用程序中即时创建工作定义?

通常您会为 docker 图像定义作业。 但是,该作业定义和 docker 当然可以执行您为其编程的任何操作,因此它可以是多用途的,您可以传入任何要执行的参数或命令行。

您可以在提交作业时覆盖作业定义中的大部分参数。

我也非常喜欢这个功能。可悲的是,目前的答案似乎是否定的。 批处理允许 parameters,但它们仅适用于 command

AWS Batch Parameters

您也许可以找到使用 :latest 标签的解决方法,但这样您就等于是在购买 :latest 地狱的门票。

我目前的解决方案是使用我的 CI 管道使用 aws cli 更新所有 dev 作业定义(describe-job-definitions 然后 register-job-definition) 在每个标记的提交上。

为了保持我的基础设施即代码的一致性,我已将批处理作业定义的版本移动到我在 运行 任何 terraform 命令之前检索的环境变量中。