按照官方的教程,搭了一遍laravel5.4开发环境,因为之前用symfony也是virtual box+vagrant开发的,因此搭建的过程还是挺顺利的,不过官方的文档还是有一点坑。因此希望我的博客能给一些人一点帮助。
-
安装homestead vagrant box
我的硬件环境是win10,当 VirtualBox / VMware 以及 Vagrant 安装完成后,在cmd中,你使用以下命令将 laravel/homestead 这个 box 安装进你的 Vagrant 程序中。 box 的下载会花费你一点时间,具体的下载时长由网络速度决定:
vagrant box add laravel/homestead
-
安装homestead
以下操作在git bash中运行
cd e:
cd laravel
git clone https://github.com/laravel/homestead.git Homestead
cd Homestead
git checkout v6.0.3
找到e:/laravel/homestead文件夹,以下操作在cmd中运行
init.bat
生成homestead.yaml 配置文件
-
配置homestead
仅列举需要修改的项目
- 配置共享文件夹
folders:
- map: E:/laravel/Homestead/Code
to: /home/vagrant/Code
- 配置nginx站点
sites:
- map: homestead.app
to: /home/vagrant/Code/blog/public
3.配置keys
如果按照官方的教程,配置完配置文件vagrant up 之后会报错,提示id_rsa不存在,是因为官方并没有提到配置key,所以我们需要在git bash中生成一下
ssh-keygen
4.修改host文件
比较简单,不再赘述,记得修改的ip为配置文件中的ip
-
启动vagrant box
编辑完成之后,就可以在cmd中进入homestead文件夹,然后运行
vagrant up
这样虚拟机环境就大体搭建完成了
接下来简单说一下vagrant 的几个常用命令
- 虚拟机开机 vagrant up
- 虚拟机关机 vagrant halt
- 虚拟机挂起 vagrant suspend
- 虚拟机唤醒 vagrant resume
- 销货当前虚拟机 vagrant destroy
- 查看当前已经存在的 box vagrant box list
- 连接ssh vagrant ssh
一些端口转发的说明
以下本地电脑连接端口将会被转发至 Homestead 环境:
- SSH: 2222 → Forwards To 22
- HTTP: 8000 → Forwards To 80
- HTTPS: 44300 → Forwards To 443
- MySQL: 33060 → Forwards To 3306
- Postgres: 54320 → Forwards To 5432
- Mailhog: 8025 → Forwards To 8025
因此可以在本机用Navicat和ssh进行连接。
如果想要从你主机上的数据库客户端连接 MySQL 或 Postgres,可以通过 127.0.0.1 来使用端口 33060(MySQL) 或 54320(Postgres) 连接。账号密码分别是 homestead / secret
ssh客户端连接的话,ip为虚拟机ip,可以用ifconfig命令查看。账号密码均为vagrant -
更新homestead
- vagrant box update更新vagrant box
- 更新homestead源代码,因为我们是通过克隆仓库的形式添加的代码,所以我们可以直接在git bash中运行
git pull origin master来完成添加。
网友评论