在尝试安装Laravel Homestead 5小时后,我需要帮助.. 我在hetzner上有CX服务器 安装Ubuntu 16.04 安装virtualbox和vagrant
在逐步通过文档尝试进入laravel宅基地后, 但是当我试图通过ssh连接到虚拟机时,我有一个错误。
我对这个问题没有任何想法。
vagrant ssh-config
Host homestead-7
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile /root/.vagrant.d/insecure_private_key
IdentitiesOnly yes
LogLevel FATAL
ForwardAgent yes
Vargantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :
require 'json'
require 'yaml'
VAGRANTFILE_API_VERSION ||= "2"
confDir = $confDir ||= File.expand_path(File.join(Dir.home, ".homestead"))
homesteadYamlPath = confDir + "/Homestead.yaml"
homesteadJsonPath = confDir + "/Homestead.json"
afterScriptPath = confDir + "/after.sh"
aliasesPath = confDir + "/aliases"
require File.expand_path(File.dirname(__FILE__) + '/scripts/homestead.rb')
Vagrant.require_version '>= 1.8.4'
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
if File.exist? aliasesPath then
config.vm.provision "file", source: aliasesPath, destination: "/tmp/bash_aliases"
config.vm.provision "shell" do |s|
s.inline = "awk '{ sub(\"\r$\", \"\"); print }' /tmp/bash_aliases > /home/vagrant/.bash_aliases"
end
end
if File.exist? homesteadYamlPath then
settings = YAML::load(File.read(homesteadYamlPath))
elsif File.exist? homesteadJsonPath then
settings = JSON.parse(File.read(homesteadJsonPath))
end
Homestead.configure(config, settings)
if File.exist? afterScriptPath then
config.vm.provision "shell", path: afterScriptPath, privileged: false
end
if defined? VagrantPlugins::HostsUpdater
config.hostsupdater.aliases = settings['sites'].map { |site| site['map'] }
end
end
vagrant ssh
ssh_exchange_identification: read: Connection reset by peer
调试信息:
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
DEBUG subprocess: Exit status: 0
DEBUG virtualbox_5_1: - [1, "ssh", 2222, 22, "127.0.0.1"]
DEBUG virtualbox_5_1: - [1, "tcp27017", 27017, 27017, ""]
DEBUG virtualbox_5_1: - [1, "tcp33060", 33060, 3306, ""]
DEBUG virtualbox_5_1: - [1, "tcp44300", 44300, 443, ""]
DEBUG virtualbox_5_1: - [1, "tcp54320", 54320, 5432, ""]
DEBUG virtualbox_5_1: - [1, "tcp8000", 8000, 80, ""]
DEBUG ssh: Checking key permissions: /root/.vagrant.d/insecure_private_key
INFO ssh: Invoking SSH: ssh ["vagrant@127.0.0.1", "-p", "2222", "-o", "Compression=yes", "-o", "DSAAuthentication=yes", "-o", "LogLevel=FATAL", "-o", "IdentitiesOnly=yes", "-o", "StrictHostKeyChecking=no", "-o", "UserKnownHostsFile=/dev/null", "-i", "/root/.vagrant.d/insecure_private_key", "-o", "ForwardAgent=yes"]
需要任何建议!
答案 0 :(得分:0)
如果您已生成homestead.yaml
文件,则可能需要使用ssh-keygen -t rsa -C “your_email@example.com”
在主目录中为laravel生成ssh文件,以便将homestead.yaml
文件配置为指向到下载ssh文件的目录,您可以使用此代码作为参考homestead.yamel
默认配置
ip: “192.168.10.10”
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
— ~/.ssh/id_rsa
folders:
— map: ~/Code
to: /home/vagrant/Code
sites:
— map: homestead.app
to: /home/vagrant/Code/Laravel/public
databases:
— homestead
# blackfire:
# — id: foo
# token: bar
# client-id: foo
# client-token: bar
# ports:
# — send: 50000
# to: 5000
# — send: 7777
# to: 777
# protocol: udp`
根据您的系统信息更新信息
`ip: “192.168.10.10”
memory: 1024
cpus: 1
provider: virtualbox
authorize: c:/Users/User/.ssh/id_rsa.pub
keys:
— c:/Users/User/.ssh/id_rsa
folders:
— map: e:/Homestead_Projects
to: /home/vagrant/Code
sites:
— map: homestead.app
to: /home/vagrant/Code/Laravel/public
databases:
— homestead
# blackfire:
# — id: foo
# token: bar
# client-id: foo
# client-token: bar
# ports:
# — send: 50000
# to: 5000
# — send: 7777
# to: 777
# protocol: udp
希望这会有所帮助
请记住,您在此处所做的任何更改都需要运行vagrant reload --provision
命令。
希望这对您有益。