Packer 实例访问 AWS 中的私有 Docker 注册表

Packer instance accessing private Docker registry in AWS

使用 Jenkins,运行 在我的 build VPC 中,我得到了一份运行 Packer 构建来烘焙 AMI 的工作。在创建 AMI 期间,我必须从我的私有 Docker 注册表中提取,也在我的 build VPC 中提取 运行。

我已经锁定了我的注册表,因此只能从 Jenkins 或我的办公室访问它。

烘焙 AMI 时,我需要拉取一个 docker 图像并从中启动一个容器。但是,由于不允许 Packer 的实例访问注册表,因此失败。

我不知道如何动态允许访问此实例的注册表。

有没有办法用 Packer(或 Jenkins)做到这一点,而不必一直打开注册表?

我会让 Packer 使用以下设置启动正在构建到安全组中的实例:security_group_idsecurity_groups_ids。如果将该组添加到 Docker 注册表实例的安全性中,则应允许在网络级别进行通信。权限全在你。

https://packer.io/docs/builders/amazon-ebs.html