首页 > 服务器 > Win服务器 > 正文

window下homestead开发环境安装详细教程

2020-07-28 14:19:03
字体:
来源:转载
供稿:网友

一、资源准备

  链接:http://pan.baidu.com/s/1mh7qUBe 密码:p4wx

  1. virtualbox.box文件放在C盘根目录上。

  2. metadata.json文件放在C盘用户目录上。比如我的是 C:/Users/pc

  3. Git-2.9.3-64-bit.exe 下载安装,全部默认就好。

  4. vagrant_1.8.5.msi 下载安装。

  5. VirtualBox-5.1.4-110228-Win.exe 下载安装。

二、简介

  1. 什么是vagrant?

  VirtualBox相信很多人都用过,它是一个虚拟化软件,用来在我们的电脑上虚拟出一电脑来,和 VMware Workstation, kvm, xen等是一类东西(专业点的说法叫Hypervisor),不过它提供易用的界面(VMware也有),对各平台的支持(Linux, Win, Mac),又非常的轻量,最关键的free呀,所以使用非常广泛。

我们平时使用VirtualBox最常见的情况就是,自己电脑是个Win,想跑个Linux,或者电脑是个Linux,要跑win上网银啊,QQ什么的 win only之类的,虽然有wine这样的东东,可以在Linux下跑win下的软件,但有个win系统稳定性不更好么,并且现在的电脑配置,完全不用担心虚拟机消耗内存CPU什么的,你不用那才是浪费呢,何况VirtualBox这么轻量。个人体验,弄个xp虚拟机跑QQ资源消耗比chrome或者ff登webQQ要少,可恶的用了多少js。。。

对天天码代码的苦逼程序员来说,VirtualBox就不能是简简单单的挂个Q这么用了,程序员搞最多的就是码代码了,可能做很多个项目,公司里搞java的,php的,自己回家再玩个python什么的,想体验下新版本的mongodb或者nginx,Emacs或者vim的配置啦,保不准哪个项目前个版本的数据库是mysql,下个版本用了postgresql, 这么多东西全都搞在一起,装在一个电脑上,肯定会被这各种配置环境搞的晕晕的,烦不胜烦。

怎么办呢,最好是每个项目都有一个干净的开发环境,只为这个项目,可是我们不可能为每一个项目配一个电脑吧,有了,虚拟机,给每一个项目配一个虚拟机,开发A的时候就启A的虚拟机,这样各个开发环境互相独立,干干净净。还有一个问题,我们的项目有多个开发人员,如何保障大家的开发环境都一样呢,总不能每个人都一个个点击鼠标,填写配置参数,建好后上支一个个软件安装吧,这太麻烦了,太不geek了。我们想要的是,环境只配置一遍,然后可以把这个环境打包deliver给别人,别人拿到后,直接启起来就可以用。那有没有这样的东西呢,肯定是有的,Vagrant,它就是用来干这个的。

  2.什么是homestead?

  homestead就上面灰色标注laravel官方打包给我们使用的环境,也就是资源准备里的第一个文件virtualbox.box。它包含以下东西:

Ubuntu 16.04GitPHP 7.0NginxMySQLMariaDBSqlite3PostgresComposerNode (With PM2, Bower, Grunt, and Gulp)RedisMemcachedBeanstalkd

三、安装步骤

  Git bash 下

  1. 输入 vagrant box add metadata.json

        2. 输入 git clone https://github.com/laravel/homestead.git Homestead

  3. 输入 bash init.sh

  这时你的用户目录下会多了一个 .homestead 文件夹,里面有一个 Homestead.yaml 文件,这是homestead配置文件,我们日常开发中经常会用到的。现在对这个文件进行编辑

---#虚拟机的ip地址ip: "192.168.10.10"#分配给虚拟的内存memory: 2048#cpu数cpus: 2provider: virtualboxauthorize: ~/.ssh/id_rsa.pubkeys:- ~/.ssh/id_rsa#设置主机与虚拟机的共享文件夹folders:#主机- map: ~/Code/test#虚拟机to: /home/vagrant/Code/test#设置域名与访问地址sites:- map: test.appto: /home/vagrant/Code/test/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
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表