尽管某些旧帖子接近有效,但它们对我来说都无法正常工作。我必须在终端中使用 keygen 制作 rsa 密钥并使用自定义密钥。换句话说,不能使用Vagrant的密钥。
截至本帖日期,我使用的是Mac OS Mojave。我在一个Vagrantfile中设置了两个 Vagrant boxes。我展示了第一个 box 的所有内容,以便新手可以看到上下文。我将 .ssh 文件夹放在与 Vagrantfile相同的文件夹中,否则请使用 user9091383 的设置。
这个解决方案的来源来自于 这位开发者。
Vagrant.configure("2") do |config|
config.vm.define "pfbox", primary: true do |pfbox|
pfbox.vm.box = "ubuntu/xenial64"
pfbox.vm.network "forwarded_port", host: 8084, guest: 80
pfbox.vm.network "forwarded_port", host: 8080, guest: 8080
pfbox.vm.network "forwarded_port", host: 8079, guest: 8079
pfbox.vm.network "forwarded_port", host: 3000, guest: 3000
pfbox.vm.provision :shell, path: ".provision/bootstrap.sh"
pfbox.vm.synced_folder "ubuntu", "/home/vagrant"
pfbox.vm.provision "file", source: "~/.gitconfig", destination: "~/.gitconfig"
pfbox.vm.network "private_network", type: "dhcp"
pfbox.vm.network "public_network"
pfbox.ssh.insert_key = false
ssh_key_path = ".ssh/"
pfbox.vm.provision "shell", inline: "mkdir -p /home/vagrant/.ssh"
pfbox.ssh.private_key_path = ["~/.vagrant.d/insecure_private_key", ".ssh/id_rsa"]
pfbox.vm.provision "file", source: ".ssh/id_rsa.pub", destination: ".ssh/authorized_keys"
pfbox.vm.box_check_update = "true"
pfbox.vm.hostname = "pfbox"
config.vm.provider "virtualbox" do |vb|
vb.name = "pfbox"
vb.memory = 2048
vb.cpus = 1
end
end
config.vm.define "dbbox" do |dbbox|
...