如何将 AWS 角色与 Packer 结合使用来创建 AMI

2024-01-31

我目前正在通过 Packer 构建 AMI,没有出现任何问题,但我将 AWS 凭证烘焙到我的脚本中,这不是我想要的。阅读 Packer 文档后,他们指出,如果没有找到凭证,它可以使用 AWS 角色。

我已经创建了策略和角色,但我不清楚如何告诉 Packer 使用此角色。我是否必须将 ARN 作为变量传递?

有什么想法吗?


如果您想从命令行设置 Packer 在创建 AMI 期间使用的 IAM 角色 (e.g.来自 Jenkins),那么你可以使用变量来执行此操作,e.g.在 Packer 脚本中使用以下内容:

"variables": {
  "packer_profile": "packer",
  ...
},
"builders": [
  {
    "type": "amazon-ebs",
    ...
    "iam_instance_profile": "{{user `packer_profile`}}",
    ...
  }
],
"provisioners": [
  ...
]

所以我们提供了一个default“打包机”对我们的价值packer_profile多变的。然后,当从 Jenkins 中的命令行调用 Packer 时,您可以使用以下命令覆盖该默认变量值:

$ /path/to/packer -var packer_profile="MyNewProfileHere" ...

希望这可以帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 AWS 角色与 Packer 结合使用来创建 AMI 的相关文章

随机推荐