代码之家  ›  专栏  ›  技术社区  ›  Josh Kodroff

如何让userdata在自定义的Ubuntu 18.04ami上执行?

  •  1
  • Josh Kodroff  · 技术社区  · 7 年前

    我已经创建了一个使用Packer安装Nginx的自定义a m I,它基于Canonical的官方Ubuntu 18.04ami,但是在部署Packer生成的AMI时,我很难让用户数据执行。

    以下是我在打包程序构建中执行的shell命令:

    "provisioners": [ { "type": "shell", "inline": [ "sudo apt-get update", "sudo apt-get upgrade -y", "sudo apt-get install nginx -y", "sudo rm -f /var/log/cloud-init.log", "sudo rm -f /var/log/cloud-init-output.log", "sudo rm -rf /var/lib/cloud/*", "sudo cloud-init init", "sudo cloud-init modules -m final" ] } ]

    1 回复  |  直到 7 年前
        1
  •  -1
  •   VimalKumar    7 年前

    我们尝试了这种方法,但无法在计算机启动时运行自定义脚本。我假设您使用Terraform/Ansible/Cloudformation来提供资源。我们将用户数据脚本移动到terraform脚本(也可以在Ansible中完成),后者提供基础设施并分配AMI。它对我们有用。