我正在尝试使用 Packer 制作 Proxmox 模板,并且我一直在努力让它选择法语。
这是我的
user-data
文件的一部分:
autoinstall:
version: 1
locale: fr_FR
keyboard:
layout: fr
我浏览了打包程序文档,但找不到有关该用户数据文件的任何文档:/有人知道我可以在哪里获得此信息吗?
Packer 本身不知道也不关心用户数据文件是什么。这是特定于操作系统的东西,例如在 ubuntu https://ubuntu.com/server/docs/install/autoinstall-reference#user-data 中。而其他操作系统(如 Windows 或 RHEL)可能有不同的方法来设置系统。使用 ubuntu 示例,我之前完成此操作的方式是使用如下设置。
在我的例子中,我使用的是vsphere,但这个想法应该适用于其他来源,如AWS EBS等。我还有一个setup.sh脚本,我作为构建的一部分运行,以在系统引导后配置一些其他东西
/ubuntu20.04
/config-files
user-data
meta-data
/setup
setup.sh
template.pkr.hcl
var.pkr.hcl
用户数据
#cloud-config
autoinstall:
version: 1
early-commands:
# Stop ssh for packer
- sudo systemctl stop ssh
locale: en_GB
keyboard:
layout: en
variant: gb
# plus other stuff in my setup
模板.pkr.hcl
source "vsphere-iso" "ubuntu" {
cd_files = [
"./config-files/user-data",
"./config-files/meta-data"
]
cd_label = "cidata"
#
#some other stuff
#
}
build {
sources = ["source.vsphere-iso.ubuntu"]
provisioner "shell" {
execute_command = "echo '${var.ssh_password}' | {{.Vars}} sudo -S -E bash '{{.Path}}'"
environment_vars = [
"BUILD_USERNAME=${var.ssh_username}",
]
scripts = ["./setup/setup.sh"]
expect_disconnect = true
}
}