Ubuntu下Laravel的开发环境安装及部署(Vagrant + Homestead)
2017-11-07 10:35
981 查看
2018-2-6 更新
注意! laravel/homestead box项目地址已经不再是原来的 https://atlas.hashicorp.com/laravel/boxes/homestead,而已经变更成 https://app.vagrantup.com/laravel/boxes/homestead
,所以本文中的操作以及链接也进行了相应的更新。
之前写了一篇如何在
本文中使用了
好了,废话不多说,赶快开始吧!
首先还是需要下载相应的安装包文件。
在 https://www.vagrantup.com/downloads.html 可以下载到
注意,我们下载
下面我们需要安装
https://www.virtualbox.org/wiki/Download_Old_Builds_5_1
下载完成后双击进行安装。
接下来我们需要下载
https://app.vagrantup.com/laravel/boxes/homestead/versions/5.1.0/providers/virtualbox.box
接下来我们需要将
注意,需要将以上
然后我们进入到
完成后,我们就可以开始配置
我们从
注意! laravel/homestead box项目地址已经不再是原来的 https://atlas.hashicorp.com/laravel/boxes/homestead,而已经变更成 https://app.vagrantup.com/laravel/boxes/homestead
,所以本文中的操作以及链接也进行了相应的更新。
之前写了一篇如何在
Windows 10下进行
Laravel开发环境的安装及部署,今天我们要一起来看一下如何在
Linux下进行搭建。
本文中使用了
Ubuntu 16.04 LTS,
Vagrant 2.0.0版本以及
Homestead 5.1.0。
好了,废话不多说,赶快开始吧!
首先还是需要下载相应的安装包文件。
在 https://www.vagrantup.com/downloads.html 可以下载到
Vagrant的最新版本:
注意,我们下载
Debian 64-bit版本。下载完成后,双击下载的
.deb文件进行安装(需要验证管理员密码)。完成后,我们继续下一步。
下面我们需要安装
Virtual Box。请访问以下链接寻找适合你系统的版本,这里我们使用的是
Ubuntu 16.04 LTS 64bit,所以我们
AMD64版本。注意,图片中我们看到的是
5.2.0版本,但是该版本不支持
vagrant 2.0.0,所以我们需要下载
VBox 5.1版本(图片下部的链接为5.1版本):
https://www.virtualbox.org/wiki/Download_Old_Builds_5_1
下载完成后双击进行安装。
接下来我们需要下载
Homestead 5.1.0。将以下的地址复制到下载工具中,并将下载的文件重命名为
homestead.5.1.0.box:
https://app.vagrantup.com/laravel/boxes/homestead/versions/5.1.0/providers/virtualbox.box
接下来我们需要将
Homestead添加至
vagrant中):
$ sudo vagrant box add laravel/homestead ~/path/to/your/homestead.5.1.0.box
注意,需要将以上
~/path/to/your/路劲替换成你刚刚保存
homestead.5.1.0.box的路径,还有不要以
root身份直接运行该命令,而是使用
sudo,否则在
~/中将找不到
.vagrant.d文件夹。
然后我们进入到
~/.vagrant.d/boxes/laravel-VAGRANTSLASH-homestead文件夹中(如果没有看到这个文件夹,请在
~/文件夹中按下
ctrl + h显示所有文件),将
0这个文件夹名字改为
5.1.0。然后新建一个空白文件(无任何后缀),名字为
metadata_url,里面的内容为:
https://atlas.hashicorp.com/laravel/homestead(注意不要留任何空白字符)。
完成后,我们就可以开始配置
Homestead了。
我们从
Github上把
Homestead配置
clone下来:
$ cd $ git clone https://github.com/laravel/homestead.git[/code]
接着我们需要修改Homestead.yaml这个配置文件:$ cd ~/Homestead $ vim Homestead.yaml--- 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
我们一项一项来配置。首先是authorize: ~/.ssh/id_rsa.pub keys: - ~/.ssh/id_rsa
这段,我们需要设置ssh的公钥和私钥。在本地环境输入以下命令:eagle@EagleEye: cd ~/.ssh eagle@EagleEye: ~/.ssh$ sudo ssh-keygen -t rsa -C "Homestead" Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): your_rsa_name Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in your_rsa_name. Your public key has been saved in your_rsa_name.pub. The key fingerprint is: SHA256:lBUtkkHYGFtCugouCp9Xvp2eGP4xCArKmrCVA/HJam0 Homestead The key's randomart image is: +---[RSA 2048]----+ | .+*+ooo | | .o++o. . | |. . . o. . | | + . . . | |+ + o S | |+=.+ ... | |*+*E oo o | |B=.o...+ = | |= o. ++* | +----[SHA256]-----+
注意上面我们的文件名可以替换成自定义的名字,在输入密码的步骤时可以直接回车密码留空。
接下来我们需要把配置文件的名字替换成我们刚刚设置的文件名:authorize: ~/.ssh/your_rsa_name.pub keys: - ~/.ssh/your_rsa_name
那么这一步配置就OK了。
下一步我们看到这一段配置:folders: - map: ~/Code to: /home/vagrant/Code sites: - map: homestead.app to: /home/vagrant/Code/laravel/public databases: - homesteadfolders配置中,map之后的路径对应的是本地文件的路径,to对应的是本地文件映射到虚拟机中对应的路径。sites配置中,map之后的字符串是我们在浏览器中输入的可以用来访问我们项目的地址,可以根据个人喜好来,比如myproject.test或者myproject.production,而to对应的是虚拟机中项目文件的public路径,类似于apache默认的/var/www/html文件夹,指向这个文件夹可以直接访问我们的项目。databases配置中,是我们指定需要创建的数据库名称,默认为homestead,我们可以添加多个需要使用的数据库名称。
下面我给出一个配置的例子:folders: - map: ~/webdev to: /home/webdev sites: - map: phantastic.test to: /home/webdev/phantastic/public databases: - phantastic
这样我们的Homestead就配置完成。现在我们可以开启虚拟机了:$ cd ~/Homestead $ sudo vagrant up
注意,一定要加上sudo,也不能直接切换成su运行命令。
等虚拟机启动好后,我们输入sudo vagrant ssh就可以ssh进入虚拟机了。
要访问我们的项目,我们还有一个很重要的步骤:更改一下hosts文件:$ sudo su -- $ vim /etc/hosts 127.0.0.1 localhost 127.0.1.1 EagleEye 192.168.10.10 phantastic.test # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
可以看到,我们将我们的项目地址和对应虚拟机ip地址加入到了hosts文件中。如果我们有多个项目,那么我们可以将每一个项目的地址添加进去,项目对应的ip全部都是192.168.10.10。
现在我们就可以打开浏览器访问我们的项目了!打开浏览器,输入phantastic.test,浏览器会自动访问该地址对应的项目。
好了,那么今天我们就讲解到这里,如果有阐释不清晰的地方,可以留言多多交流。
相关文章推荐
- Windows 10下Laravel的开发环境安装及部署(Vagrant + Homestead)
- Windows 10下Laravel的开发环境安装及部署(Vagrant + Homestead)
- Windows 10下Laravel的开发环境安装及部署(Vagrant + Homestead)
- Laravel 虚拟开发环境Homestead安装
- Ubuntu 14.04下安装部署Qt5开发环境
- Ubuntu14.04安装pycharm用于Python开发环境部署,并且支持pycharm使用中文输入
- 步步学习python之环境安装:Vagrant+Ubuntu+Emacs+Virtualenv+Python3开发环境的搭建(Mac电脑下)1
- Laravel 的 Homestead 开发环境部署
- Ubuntu14.04安装pycharm用于Python开发环境部署,并且支持pycharm使用中文输入
- vagrant使用virtualbox安装ubuntu16.04搭建lemp部署laravel项目
- 步步学习python之环境安装:Vagrant+Ubuntu+Emacs+Virtualenv+Python3开发环境的搭建(Mac电脑下)4
- 【转载保存】Ubuntu14.04安装pycharm用于Python开发环境部署,并且支持pycharm使用中文输入
- ubuntu安装lamp开发环境以及composer和laravel
- win10 下 Laravel 虚拟开发环境 Homestead 安装教程
- Laravel的容器Vagrant+Homestead+Composer+Yaml开发环境搭建正确步骤
- Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境
- Laravel 的 Homestead 开发环境部署
- Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境
- Windows上使用Vagrant打造Laravel Homestead可协同跨平台开发环境
- Ubuntu、CentOS Linux系统安装Erlang,部署Eclipse+Erlide开发环境