如何打开和运行现有的 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。(您必须通过 homebrewapt-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?

单击本地通知时无法打开现有的正在运行的活动

如何根据现有的 mongoose 查询检查单个文档?

如何将 Artisan cli 添加到现有的 laravel 项目?

如何从 Xcode 打开现有的颤振项目?

WCF客户端可以关闭与服务的链接吗,让软件也可以照常运用,现有的只有打包好的软件和配置文件