我正在尝试包装LXC盒子。我使用Vagrantfile创建的LXC框类似于下面的代码段。
在运行vagrant软件包之前,我先将Vagrant公钥authorized_keys放入。在打包了几个VirtualBox框后,这是我的理解,这是必需的步骤。
对于这个LXC盒子,我最终得到了一个盒子文件,其中包括一个private_key文件。导入框后,密钥是
/home/user/.vagrant.d/boxes/c2-VAGRANTSLASH-ubuntu1804/0.1.0/lxc/vagrant_private_key
随后,Vagrant无法通过SSH进入框中,因为authorized_keys仅包含我放置在此处的Vagrant公钥。
此私钥来自哪里?如何防止将其包装到包装盒中?
Vagrant.configure(2) do |config|
config.vm.define 'ubuntu1804' do |cfg|
cfg.vm.box = 'emptybox/ubuntu-bionic-amd64-lxc'
cfg.vm.provider :lxc do |lxc|
lxc.container_name = :machine
end
cfg.vm.provision 'chef_zero' do |chef|
...
end
end
end
作为解决方法,我现在选择保留原始不安全密钥为
cfg.ssh.insert_key = false