之前写了一篇laravel官方的vagrant镜像homestead手动安装的教程,最近发现了phalcon官方其实也有vagrant的镜像。国内缺少这方面的中文教程,就自己写一篇吧。其实两个框架的vagrant镜像安装方法是很像的,完全可以照搬laravel的教程来,只是配置文件和vagrant脚本稍微有一些不同。
第一步:windows系统安装vagrant和virtualbox
上vagrant和virtualbox官方下载最新版即可,这里要特别注意的是,CPU必须开启VT-x虚拟化的技术。具体请搜索下,安装完虚拟机后,手动重启修改BIOS设置。
第二步:手动下载vagrant的镜像文件以及配置文件
文武双全手动上传到百度云里了,地址是
https://pan.baidu.com/s/1sl8oiBF
第三步:使用git下载vagrant的配置文件
在电脑里建立一个vagrant目录,存放git下载的box配置文件,在vagrant目录打开bit bash执行以下git命令。
git clone https://github.com/phalcon/box.git workspace
第四步:在Homestead目录下执行初始化命令
cd workspace
./install
这个目录会在当前目录建立setting.yaml的配置文件
第五步:创建phalcon/box的手动安装配置文件
特别提醒:有童鞋按照官方文档的方法安装失败,那是因为下载镜像的资源被墙。国内最好的安装方法就是离线下载镜像,然后手动安装。配置文件如下:

在workspace目录下新建立如图所示的json配置文件,注意version字段填写正确的版本号,url要填写正确的windows下的路径。
第六步:使用vagrant添加镜像
git bash命令行下,在workspace目录内,执行以下命令,
vagrant box add workspace.json
第七步:执行以下命令查看box是否已经添加
vagrant box list
第八步:生成或者配置你的SSH密钥
生成SSH密钥的命令是:
ssh-keygen -t rsa -C "you@homestead"
生成的密钥位置一般在,windows用户目录的.ssh文件夹内,例如C:\Users\administrator\.ssh
第九步:修改Homestead.yaml配置文件,参考下图

这里要注意,本地和虚拟机里对应的目录,可能需要在vagrant up启动后手动建立。命令为mkdir 目录名。
第十步:启动虚拟机,修改本机的SSH私钥和虚拟机的SSH公钥
可以在git bash下使用,vagrant up命令启动虚拟机,第一次启动会因为SSH密钥没有正确配置,导致SSH登录失败。
可以通过vagrant ssh-config命令查看本地私钥的地址,然后修改为刚刚生成的新的私钥。
第十一步:登录虚拟机,然后修改公钥
在workspace目录下执行git bash的如下命令:
vagrant ssh
如果配置文件正确,就会直接登陆到虚拟机。
第十二步:重新启动虚拟机的方法
可以在git bash里,通过vagrant halt命令手动关闭虚拟机。然后再在git bash里,执行vagrant up命令重启虚拟机。
vagrant命令执行完毕后,系统后提示可以执行 vagrant provision命令,执行命令进行预处理。
第十三步:千万别忘记修改composer的全局配置文件,使用中国镜像
千万别忘记,更换composer的中国区镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
第十四步:创建目录通过composer组织项目或者git下载phalcon项目代码
使用命令 cd /home/vagrant/workspace进入workspace的目录,此时可以通过新建composer.json文件开始建立我们的phalcon目录啦。
phalcon框架已经跟php已经安装好啦,可以通过mkdir public目录,创建一个包含phpinfo()函数的php文件,查看当前的系统环境。
当然,这时候也可以直接执行git clone命令下载github上的phalcon项目啦。
第十五步:测试虚拟机里的网站是否可以正常访问
浏览器输入http://phalcon.local/infophp.php,正常情况下会显示PHP的欢迎界面。如果无法打开,请修改windows系统的host文件。在最后面添加一行。
192.168.50.4 phalcon.local
第十六步:访问homestead自带的mysql数据库或者postgres
在Navicat里新建连接,HOST填写 127.0.0.1,端口写33060(mysql)或者54320(Postgres),账号和密码分别是phalcon/secret
备注一:Phalcon VirtualBox镜像官方英文文档地址
https://github.com/phalcon/box/blob/master/README.md
备注二:Phalcon VirtualBox镜像手动下载地址,注意修改版本号
https://atlas.hashicorp.com/phalconphp/boxes/xenial64/versions/2.1.1/providers/virtualbox.box
备注三:Phalcon VirtualBox镜像最新版本号查看
https://atlas.hashicorp.com/phalconphp/boxes/xenial64
备注四:全宇宙最全的镜像查询地址
https://atlas.hashicorp.com/boxes/search