如何打开和运行现有的 Vagrant/Homestead 项目
Posted
技术标签:
【中文标题】如何打开和运行现有的 Vagrant/Homestead 项目【英文标题】:How to open and run a existing Vagrant/Homestead project 【发布时间】:2018-06-13 12:32:35 【问题描述】:我最近得到了一个 Laravel/php 项目。我从 gitHub 下载了该项目,并试图让它运行。
这是下载项目的文件系统截图:
这是homestead目录的文件系统:
这是我的homestead.yaml
:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: parallels
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/code
to: /home/vagrant/code
sites:
- map: homestead.test
to: /home/vagrant/code/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
该项目是使用 Homestead/Vagrant 设置运行的,我正试图弄清楚如何做到这一点。我已经安装了 Homestead 和 Vagrant,有人可以帮我解决这个问题吗?
【问题讨论】:
你有安装类似VirtualBox的虚拟机程序吗? 应该有像 github.com/laravel/homestead 这样的 Vagrantfile 在 Vagrant 上运行。 不幸的是,这是从 gitHub 直接下载的,并且没有 Vagrantfile。我确实安装了一个虚拟机程序,平行 如何将我下载的 github laravel 项目绑定到我的宅基地服务器? 您能告诉我们项目使用的 Laravel 框架版本吗? (执行此操作的步骤。打开 composer.json 文件,在"require"
下查看,然后获取 "laravel/framework"
的版本)我只是想知道,所以我可以给你更好的设置建议。
【参考方案1】:
这是一般纲要.....
-
1234563 )
下一步:进入您的 Homestead 文件夹并运行 vagrant provision
。
发生了什么:这将运行“宅基地”的供应脚本。 (根据您的配置,它将创建一个“宅基地”数据库并将 nginx 配置映射到您的虚拟机的 /home/vagrant/code/public
文件夹。它还将复制 ~/code
的内容(可能想要使用绝对文件路径。)将本地计算机上的虚拟机文件夹 /home/vagrant/code
。到目前为止,您的配置中的一切看起来都很好,但请参阅我在文件路径上的注释
使用vagrant ssh
登录你的vagrant box(又名:虚拟机)。 (如果它倒下,用vagrant up
把盒子抬起来)
导航到虚拟机中的该项目目录。 cd /home/vagrant/code/public
使用 composer 命令安装包 --> composer install
如果您不为他们的项目生成加密密钥,事情就会中断。您可以通过运行artisan key:generate
点击您的端点!看起来你打电话给你的homestead.test
。如果 chrome 用 ssl 的 HSTS 警告停止你。 (您可以谷歌如何正确解决此问题。同时,如果您看到该页面,您可以输入badidea
并继续)
如果您在此处遇到问题,则可能是数据库凭据阻止了您。 homestead
数据库的默认用户名是homestead
,默认密码是secret
。
我希望我能够填补您在设置中可能遇到的空白。另外请记住,您可以在本地计算机上运行 php artisan serve --port=8080
。(您必须通过 homebrew 或 apt-get install
apt-get docs 手动安装缺少的软件包) 有关这方面的信息可以在
Local Development Server Header。 https://laravel.com 有很棒的文档,里面有小空隙,所以也请在那里寻求进一步的帮助。祝你好运!
因此,根据您在上面的评论中提供的信息,您的项目正在运行 Laravel Framework 4.2.* 。所以我告诉你运行的命令还不存在。 (artisan key:generate
) 如果我没记错的话,这个命令只能在 5.* 中使用。
【讨论】:
这太棒了,我正在调用composer install
并且我在 Homestead 上收到此错误:Generating autoload files > php artisan clear-compiled Mcrypt PHP extension required. Script php artisan clear-compiled handling the post-install-cmd event returned with error code 1
这是什么意思?
见更新。所以只需分解错误消息。 Generating autoload files
很好。 php artisan clear-compiled Mcrypt PHP extension required
我会说谷歌。 (您的虚拟机缺少该扩展)所以修复它然后我们将检查下一个错误。顺便说一句,直接给出你的答案违背了 *** 的精神。 (研究=学习)。
我完全明白了!我一直在对此进行大量研究,我是 laravel 的新手,所以被抛出这个项目将是一个挑战。我会尽快回复您。
别担心,我知道你的痛苦,同样的事情也发生在我身上。幸运的是,我每天都使用 Laravel。嘿旁注,如果有人有答案,请不要忘记标记正确的答案以及投票和否决cmets。如果您需要在我的回复中进一步澄清,也请告诉我。
我一定会的。我仍然挂断这个Mcrypt PHP extension required
错误。我已经尝试了一切,但我不能打电话给composer install
。我通过 ssh 连接到我的 vagrant@homestead
vm 并运行了许多 sudo apt-get
调用,但似乎没有任何效果。【参考方案2】:
从 Homestead 文档开始:http://laravel.com/docs/homestead
您可能需要 Virtualbox(如果您还没有安装它)
【讨论】:
如何将下载的 github 项目绑定到我新创建的 Homestead 项目目录?【参考方案3】:如果你安装了 VirtualBox,你应该可以从 Homestead 项目目录运行vagrant up
。
https://laravel.com/docs/5.5/homestead#launching-the-vagrant-box
【讨论】:
如何将 github 项目绑定到我的 Homestead 项目目录? 哦,您是否正在尝试将现有的 NON-HOMESTEAD Laravel 项目转换为使用宅基地? 有人告诉我他们使用 vagrant/homestead 来运行这个项目。这是上面显示的新下载的 github 项目。我想使用 vagrant 在宅基地运行它。我关注了文档,但似乎无法运行。以上是关于如何打开和运行现有的 Vagrant/Homestead 项目的主要内容,如果未能解决你的问题,请参考以下文章
如何从反应原生页面快速打开现有的 ViewController?