Không có bài viết cũ nào phù hợp với tôi mặc dù một số bài viết đã đến gần. Tôi đã phải tạo khóa rsa với keygen trong thiết bị đầu cuối và sử dụng các khóa tùy chỉnh. Nói cách khác, bị đánh bại khi sử dụng chìa khóa của Vagrant.
Tôi đang sử dụng Mac OS Mojave kể từ ngày đăng bài này. Tôi đã thiết lập hai hộp Vagrant trong một tệp Vagrant. Tôi đang hiển thị tất cả hộp đầu tiên để người mới có thể nhìn thấy bối cảnh. Tôi đặt thư mục .ssh trong cùng thư mục với tệp Vagrant, nếu không thì sử dụng thiết lập user9091383.
Tín dụng cho giải pháp này thuộc về người lập trình này.
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/" # This may not be necessary. I may remove.
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"
# VirtualBox
config.vm.provider "virtualbox" do |vb|
# vb.gui = true
vb.name = "pfbox" # friendly name for Oracle VM VirtualBox Manager
vb.memory = 2048 # memory in megabytes 2.0 GB
vb.cpus = 1 # cpu cores, can't be more than the host actually has.
end
end
config.vm.define "dbbox" do |dbbox|
...
virtualhost.vm.provision "shell", inline: "cat ~vagrant/.ssh/me.pub >> ~vagrant/.ssh/authorized_keys"