【问题标题】:AWS Batch for private container image适用于私有容器映像的 AWS Batch
【发布时间】:2018-11-21 15:26:02
【问题描述】:

我想使用 AWS 批处理启动许多作业(所有作业都使用相同的软件);就像使用作业调度程序在集群计算中所做的那样。该软件的 Docker 映像不可用,因此我需要创建自己的。在 Aws 批处理服务中,我看到可以定义容器映像(注册/域名)。我想我不能使用自己的私人图像,因为我没有域名。那么我是否必须为我的 docker 镜像购买弹性容器注册表,这是有代价的?或者有没有其他方法。此外,我更喜欢 AWS 中的命令行而不是控制台模式,但没有多少博客或教程可以详尽地解释 CLI。任何建议都非常感谢。

【问题讨论】:

    标签: amazon-web-services docker command-line-interface aws-batch


    【解决方案1】:

    我想我不能使用我自己的私人图像,因为我没有域名。

    没问题。给它一个唯一的名字作为名字,并将它用于你所有的 docker 图像。 MyOwnName/MySpecificDocker

    那我是否必须为我的 docker 镜像购买弹性容器注册表?

    按照有关弹性容器注册表的说明进行操作。他们逐步完成它,然后您上传您的 docker 图像。不收费。

    另外,我更喜欢 AWS 中的命令行模式而不是控制台模式,但没有多少博客或教程可以详尽地解释 CLI。

    从控制台开始,至少让它检查并正常工作。您可能需要在调试时重建不同版本的 docker 或更改作业描述。

    一旦工作,您可以使用 CLI,但我倾向于使用 Python 或 Javascript。

    对于 CLI 检查: https://docs.aws.amazon.com/cli/latest/reference/batch/index.html

    您可能只需要在设置时提交作业: https://docs.aws.amazon.com/cli/latest/reference/batch/submit-job.html

    【讨论】:

    • 嗨,谢谢代码问题。我认为 ECR 有一些定价(免费套餐除外),如 aws.amazon.com/ecr/pricing 所述,所以我想避免它。
    • 显然它的每个图像的价格基于 GB,因此非常依赖于 docker 图像的数量和大小。如果您的 docker 映像合理,金额似乎相对较小。存储为每月每 GB 0.10 美元 有转移价格,但与实际处理成本相比,所有这些价格都可能相形见绌。
    【解决方案2】:

    我不是太有经验,仍在构建自己的基础架构,但与 NAT 网关相比,ECR(存储和传输)本身的定价似乎微不足道,您需要允许您的 EC2 实例从您的内部VPC 与 ECR 对话。如果价格是您关心的问题。

    我和你一样 - 我不使用 Web 控制台,因为它不可重复 - 将 Cloudformation 与 ansible 之类的东西一起使用。这是我主要关注的一个很好的示例项目:https://github.com/aws-samples/aws-batch-genomics

    如果您在本地构建 docker 映像,将其上传到 ECR 可能需要很长时间,因此我建议使用 Aws CodeBuild 构建它,这就是我所做的 - 再次,可以在 Cloudformation 中表达此基础架构, 用 ansible 编排。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-08
      • 1970-01-01
      • 1970-01-01
      • 2022-10-18
      • 2021-08-01
      • 2016-11-07
      • 2018-03-01
      • 2021-10-30
      相关资源
      最近更新 更多