Vagrant+Virtual+HomeStead Laravel环境搭建

本文在Windows操作系统下搭建环境,其他操作系统请仅作参考

一、下载工具

1.virtualBox

Oracle 公司的虚拟机软件, 能运行在当前大部分流行的系统上

网址:https://www.virtualbox.org/wiki/Downloads

2.vagrant

命令行接口,提供一种命令行接口, 允许自动化安装虚拟机, 并且因为是脚本编写成的 provision 文本文件, 给共享虚拟机配置提供了可能, Homestead 正是构建在 Vagrant 之上

网址:https://www.vagrantup.com/downloads.html

 

二、安装

1.将vagrant和VirtualBox安装完成后打开Gitbash命令窗口进入本地路径(没有Git请先下载安装Git)

cd ~

2.克隆 homestead 项目

git clone https://github.com/laravel/homestead.gitHomestead

3.在virtualbox虚拟机中加入 homestead box

有两种方法:

(1)执行以下命令添加 box,这种方法下载很慢,容易被墙,我即使开着VPN也下不了,所以我果断用第二种方法

vagrant box add laravel/homestead

(2)命令行下下载速度太慢的话可以利用工具下载以下链接加速,即先将资源下载到本地,再添加到虚拟机中(我用迅雷下载的)

资源地址:

https://atlas.hashicorp.com/laravel/boxes/homestead/versions/2.1.0/providers/virtualbox.box

下载完毕我们得到了一个virtualbox.box文件,将它放在C:根目录下(环境搭建完后可以删除这个文件)

创建一个metadata.json文件放置在本地目录下(C:用户/当前用户/)(很重要)

metadata.json内容:

{

   "name": "laravel/homestead",

   "versions": [{

       "version": "2.1.0",

       "providers": [{

           "name": "virtualbox",

           "url": "file://C:/virtualbox.box"

        }]

    }]

}

(我的盒子是2.1.0版所以version是2.1.0,virtualbox,vagrant最好都用最新版避免出现兼容和再更新问题)

Gitbash:

cd ~

vagrant box add metadata.json

 

三、配置

1.生成配置文件

cd homestead

bash init.sh

打开Homestead目录,可以找到Homestead.yaml文件

这时开始修改Homestead.yaml文件(我用的是Sublimt text)

folders表示主机和虚拟机的共享文件

sites表示域名访问虚拟机位置

我的修改如下:

(注意:请在源文件上修改,不要复制代码,yaml文件里多一个空格就可能安装失败!)

ip: "192.168.10.10"

memory: 2048

cpus: 2

provider: virtualbox

 

authorize: ~/.ssh/id_rsa.pub

 

keys:

    -~/.ssh/id_rsa

 

folders:

    - map:~/Code/TaskManager

      to:/home/vagrant/Code/TaskManager

 

sites:

    - map:taskmanager.app

      to:/home/vagrant/Code/TaskManager/public

 

databases:

    - homestead

为了对应共享的文件,在本地目录下新建目录Code,在Code下新建子目录TaskManager

 

2.域名重定向

修改主机hosts文件添加域重定向

位置:C:\Windows\System32\drivers\etc\hosts

添加一条重定向代码:

192.168.10.10taskmanager.app

(如果保存不了,右键hosts-属性-安全-编辑,给当前用户分配此文件的权限)

 

3.SSH密钥

在gitbash窗口输入:

ssh-keygen

根据提示输入你要设置的密码(我设置为空,全部enter跳过)

然后打开homestead/scripts/homestead.rb,查看版本限制:

config.vm.box_version = settings["version"]||= ">= 2.0.0"

如果不符则修改

(注意:不要看网上的执行vagrant init laravel/homestead 命令,否则Vagrantfile会被初始化,vagrant up的时候不会执行yaml配置!)

 

4.安装环境

cd homestead

vagrant up

等待一段时间安装完成

(命令执行后,显示信息第二行如果是import...laravel/homeatead才是正确的)

vagrant ssh

进入虚拟机

ls

看是否有个Code文件,如果有,则yaml配置文件执行成功了

 

四、Box内部署

1.composer

修改虚拟机内composer下载地址转到中国镜像

composer config -g repo.packagist composerhttps://packagist.phpcomposer.com

下载laravel项目

cd Code

sudo composer create-project laravel/laravelTaskManager

在主机浏览器输入域名:taskmanager.app

访问到Laravel首页则配置成功!

 

2.修改laravel配置

修改.env文件内数据库名

...

 

3.安装phpmyadmin

网址:www.phpmyadmin.net

下载安装解压改名为phpMyAdmin放在主机的Code目录下(注意:phpMyAdmin目录下就是doc、examples等子目录)

修改yml文件:

在共享文件后添加

 - map: ~/Code/phpMyAdmin

   to:/home/vagrant/Code/phpMyAdmin

在域名重定向后添加:

 - map: phpmyadmin.app

    to:/home/vagrant/Code/phpMyAdmin

在hosts文件添加:

192.168.10.10 phpmyadmin.app

 

4.重载yaml

登录虚拟机

vagrant up

重新加载配置

vagrant provision

vagrant ssh

主机浏览器url输入phpmyadmin.app,出现phpmyadmin页面,部署完成!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值