以前,我在VirtualBox上手动设置我自己的VM并对其进行配置,以便在我离线编码时(无互联网/未连接到路由器)也能正常工作。我使用VirtualBox GUI中的设置以及VM上的Apache进行了此操作。
现在我对学习nginx感兴趣,我决定尝试使用Laravel的Homestead。我正在看的教程似乎假设我将通过网络访问Homestead VM(尽管它当然是在同一台PC上)。我需要做些什么才能确保在我离线时可以访问虚拟机(例如我在飞机或火车上编码时)?每当我回到WiFi(即apt-get等)时,我仍然可以从VM访问互联网。
(注意:我的主机运行的是Windows 7 64位)
答案 0 :(得分:1)
https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.2.msi
http://dlc-cdn.sun.com/virtualbox/4.3.22/VirtualBox-4.3.22-98236-Win.exe
到我的下载文件夹C:\ Downloads \ homestead-0-2-2.box
安装Virtualbox和Vagrant后。通过在git bash中运行以下命令安装laravel / homestead(你可以在这里下载git bash:http://git-scm.com/downloads)。
vagrant box add laravel / homestead /c/downloads/homestead-0-2-2.box
在C:\ users \ yourusername
中运行此命令git clone https://github.com/laravel/homestead.git Homestead
注意:这将创建此文件夹:C:\Users\yourusername\Homestead
包含一些文件。
仍然在Git bash中,cd进入C:\Users\yourusername\Homestead
并运行此命令:
bash init.sh
注意:这将创建一个包含Homestead.yaml和其他一些文件的文件夹C:\Users\yourusername\.homestead
然后生成一个SSH密钥,当您要通过运行此命令登录到VM时,将需要该密钥:
ssh-keygen -t rsa -C" youremailaddress@youremail.com"
注意:这会问一些问题,只需按Enter键或输入yes并按Enter键。
这将在C:\Users\yourusername\.ssh
然后你需要通过编辑 Nginx
来配置宅基地C:\用户\ digitlimit \宅\ Homestead.yaml
您可以右键单击Homestead.yaml文件,然后单击“打开”,然后选择使用wordpad打开。
My Homestead.yaml在编辑后看到了这个:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: /wamp/www
to: /home/vagrant/Code
sites:
- map: laravel.dev
to: /home/vagrant/Code/laravel/public
databases:
- homestead
variables:
- key: APP_ENV
value: local
# blackfire:
# - id: foo
# token: bar
注意:要了解映射,这是在主机和VM之间共享文件夹的过程:
我的laravel项目位于C:\wamp\www\laravel
此目录/home/vagrant/Code
将在安装后位于VM内。
所以告诉VM是什么,每当你看到/ home / vagrant / Code引用这个文件夹C:\wamp\www\laravel
同样在这:
sites:
- map: laravel.dev
to: /home/vagrant/Code/laravel/public
我们在这里说的是当我访问浏览器并输入http://laravel.dev时,显示实际指向/home/vagrant/Code/laravel/public
的{{1}}内容
编辑Homestead.yaml文件后保存您的chnages
注意:在我们可以在主机Web浏览器中使用http://laravel.dev查看我们的laravel项目之前,我们需要将以下内容添加到位于
中的hosts文件中C:\www\wamp\laravel\public
在列出的其他IP地址列表下添加此IP地址(如果有):
C:\Windows\System32\drivers\etc\hosts
最后,回到你的Git bash,确保你进入
192.168.10.10 laravel.dev
并输入:
流浪汉
等待vagrant完成其进程。当您看到任何要求获得在系统上创建网络适配器的权限的对话框时,单击是
答案 1 :(得分:0)
当您处于脱机状态时,您的开发计算机上运行的任何VM都可以访问。只需确保设置开发计算机的主机文件以设置VM的位置。
如果您关注Laravel Homestead Setup:
在scripts/homestead.rb
中,您将拥有一条具有VM的IP地址的行。
# in scripts/homestead.rb
# Configure A Private Network IP
config.vm.network :private_network, ip: settings["ip"] ||= "192.168.10.10"
将此IP地址添加到您的hosts
文件中。这通常位于C:\Windows\System32\drivers\etc\hosts
#in hosts file
192.168.10.10 yourwebsite.dev