我正在尝试在 homestead vagrant 的帮助下创建一个 Laravel 应用程序。我使用的是Windows 7开发环境。我正在使用按项目安装,并且在 Laravel 文档中我可以流浪我的项目。当我在项目中流浪时,我会陷入困境
SSH 验证方式:密码
我收到以下消息:
Timed out while waiting for the machine to boot. This means that
Vagrant was unable to communicate with the guest machine within
the configured ("config.vm.boot_timeout" value) time period.
我正在使用 Laravel 5.3 和 Vagrant 1.9.0。我使用的是 Vagrant 1.8.4,但是一旦我开始遇到麻烦,我就安装了 Vagrant 1.9.0,但收到了完全相同的错误。我尝试了以下修复here,并且从 vb.gui 我可以从启动的服务器看到以下错误:
[ 0.100000] Failed to access perfctr msr (MSR c0010007 is 0)
lvmetad is not active yet, using direct activation during sysinit
lvmetad is not active yet, using direct activation during sysinit
Scanning for Btrfs filesystems
/dev/mapper/vagrant--vg-root:clean, 127066/2559088 files, 1241443/10228736 blocks
[ 10.420196] piix4_smbus 0000:00:07.0: SMBus base address uninitialized - updrade BIOS or use force_addr=0xadr
[ ] A start jon is running for Raise network interfaces (4 min 44s / 5min 5 s)
然后服务器启动,我可以登录,但我的 Homestead.yaml 文件中的文件夹和 IP 未在服务器上设置。
这是我的 Homestead.yaml 文件:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
hostname: mysite
name: mysite
provider: virtualbox
authorize: C:/Users/xxx/.ssh/id_rsa.pub
keys:
- C:/Users/xxx/.ssh/id_rsa
folders:
- map: "C:/Users/xxx/www/mysite"
to: "/home/vagrant/mysite"
sites:
- map: homestead.app
to: "/home/vagrant/mysite/public"
databases:
- homestead
当实例正在运行时,我运行:
vagrant ssh-config
I get
Host mysite
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentitiesOnly yes
LogLevel FATAL
ForwardAgent yes
当我跑步时:
vagrant global-status
I get:
id name provider state directory
-----------------------------------------------------------------------
66eb5bf mysite virtualbox running C:/Users/xxx/www/mysite
当我尝试使用以下命令从 vagrant 获取调试信息时:
vagrant up --debug > vdebug.txt
在命令提示符中生成大量消息,但仅在 vdebug.txt 文件中生成以下消息:
Bringing machine 'mysite' up with 'virtualbox' provider...
==> mysite: Importing base box 'laravel/homestead'...
[KProgress: 20%
[KProgress: 30%
[KProgress: 60%
[KProgress: 70%
[KProgress: 90%
[K==> mysite: Matching MAC address for NAT networking...
==> mysite: Checking if box 'laravel/homestead' is up to date...
==> mysite: Setting the name of the VM: mysite
==> mysite: Clearing any previously set network interfaces...
==> mysite: Preparing network interfaces based on configuration...
mysite: Adapter 1: nat
mysite: Adapter 2: hostonly
==> mysite: Forwarding ports...
mysite: 80 (guest) => 8000 (host) (adapter 1)
mysite: 443 (guest) => 44300 (host) (adapter 1)
mysite: 3306 (guest) => 33060 (host) (adapter 1)
mysite: 5432 (guest) => 54320 (host) (adapter 1)
mysite: 22 (guest) => 2222 (host) (adapter 1)
==> mysite: Running 'pre-boot' VM customizations...
==> mysite: Booting VM...
==> mysite: Waiting for machine to boot. This may take a few minutes...
mysite: SSH address: 127.0.0.1:2222
mysite: SSH username: vagrant
mysite: SSH auth method: password
如果您看到这篇文章的结尾,谢谢!我的问题是如何将我的 IP 和文件夹从 Homestead.yaml 文件获取到服务器。任何帮助将不胜感激。如果我可以添加更多信息,请告诉我。我会及时向您通报我的最新状态。
EDIT 1
我忘了补充一点,我已经启用了虚拟化。
EDIT 2
我更改了项目文件夹中的 Homestead.yaml 文件,将 IP 设置为 192.168.10.20 而不是 192.168.10.10,但仍然没有任何更改。我会持续更新,直到得到答案。
EDIT 3
尝试更改位于我的项目文件夹中的 Vagrantfile 以在 Vagrant.configure 函数中添加以下内容:
config.vm.network "public_network", ip: "192.168.10.20", :bridge => "en1: Realtek PCIe GBE Family Controller #2"
我收到了同样的错误,但我也收到了这个:
Specific bridge 'en1: Realtek PCIe GBE Family Controller #2' not found. You may be asked to specify
which network to bridge to.