所以我一直在忙着调整我的Packer Ubuntu配置几天。
我正忙着安装Ubuntu,并且我需要安装我的机器所需的软件包。最终结果是制作一个预先安装有包裹的流浪盒
目前,我将所有的软件包配置都放在我的preseed.cfg文件中,目前我没有配置块。我的理解是你可以在preseed.cfg或provision块中安装包(通过脚本或类似厨师的东西)
这是我preseed.cfg
档案中的一行:
d-i pkgsel/include string build-essential linux-headers-$(uname -r) openssh-server ubuntu-minimal
所以我的问题是从包装工的角度来看,通过preseed.cfg安装软件包以及何时使用供应商是合适的?
答案 0 :(得分:1)
当你编写配置脚本时,我(我只为自己说话,欢迎其他人发表评论)瞄准两件事:
我安装软件包但不仅如此,通常我会安装一组配置(例如,我安装Apache但我想配置虚拟主机或其他东西)
我想要跨系统脚本,所以我可以重新使用它们来配置任何服务器(所以我尽量避免shell脚本 - 如果我需要结束编写shell命令,如果我开发新的配置器模块,我为大多数我可以使用的linux系列做到这一点)
在我个人使用封隔器/流浪者之后是使用打包器创建最小的盒子所以我甚至不会在那里放置我的配置(仅在配置步骤花费太长时间的情况下我需要创建新的流浪者VM实例经常划伤) - 我把配置步骤放在vagrant中,当vagrant旋转新VM时它会运行。
回到你的问题,我会将preseed用于不需要配置的通用包,这对系统来说是必不可少的;把剩下的部分放在配置中