在我对 Packer 的探索中,我想知道以下几点:
文档状态(作为将Ubuntu 映像预置到 AWS 的入门步骤的一部分):
注意:上例中的 sleep 30 非常重要。因为 Packer 能够在 SSH 可用时立即检测并通过 SSH 进入实例,所以 Ubuntu 实际上没有足够的时间来初始化。睡眠确保操作系统正确初始化。
它显示了一个示例,其中 shell 配置器(内联)是第一个启动的配置器。
sleep 30
在启动任何配置程序之前,您是否总是需要这样做,特别是:
- 当我使用文件配置程序启动配置块时,它会自动等待操作系统正确初始化吗?
- 当我运行脚本/脚本 shell 配置程序而不是内联命令块时,是否需要使用 启动第一个脚本
sleep 30
?
如果是这样,一般建议是您始终将其放在配置块的顶部:
"provisioners": [
{
"type": "shell",
"inline": [
"sleep 30"
]
},
{...}]