purrweb/yii2-heroku

生成yii2环境,以便在Heroku上轻松部署

安装次数: 9,228

依赖项: 0

建议者: 0

安全性: 0

星标: 6

关注者: 10

分支: 4

开放问题: 1

类型:yii2-extension

1.0.0 2015-06-30 09:43 UTC

This package is not auto-updated.

Last update: 2024-09-18 09:36:12 UTC


README

此扩展允许您将环境文件生成到您的yii2高级应用程序中,以便在Heroku上轻松部署。如果您没有预发布或测试服务器,并且需要向某人展示您的应用程序如何工作,则此扩展可能很有帮助。在使用此扩展之前,请确保您有Heroku账户,并且知道如何创建应用程序以及如何使用它。

安装

php composer.phar require --dev --prefer-dist purrweb/yii2-heroku "*"

或添加到composer.json(require-dev部分)

"purrweb/yii2-heroku": "*"

用法

在控制台/config/main-local.php中添加以下内容

<?php
return [
	...
    'controllerMap' => [
        'heroku' => [
            'class' => 'purrweb\heroku\HerokuGeneratorController',
        ],
    ],
	...
];

现在,您可以运行以下控制台命令来生成Heroku所需文件

$ php yii heroku

您将需要覆盖环境目录中的index.php。如果您没有更改该文件,您可以回答“是,覆盖”。如果您更改了该文件,您应该手动合并此扩展的文件和您的应用程序的文件。该命令将在应用程序根目录中生成3个文件,并在您的环境目录中创建一个名为“heroku”的目录,其中包含环境文件。

在您的应用程序根目录中,您将看到新的未跟踪文件

  • "Procfile",简单的Heroku Procfile,在Heroku上运行nginx web服务器
  • "nginx.conf",简单的nginx配置,允许后端和前端应用程序在Heroku的一个dyno上工作
  • "post-install-cmd.sh",bash脚本,在您在Heroku上执行git push后自动启动

下一步,您需要在composer.json中添加以下脚本部分

"scripts": {
        "post-install-cmd": [
            "sh post-install-cmd.sh"
        ]
    }

在您的环境目录中,您可以打开新文件并编辑它们。之后,手动运行“git add”和“git commit”命令,将所有生成的文件添加到您的存储库中。现在,您可以将代码推送到Heroku。如果一切顺利,您将能够跟随Heroku给出的URL。要运行您的yii2后端应用程序,只需点击以下链接:{您的应用程序URL}/backend。

如果您使用第三方库,不要忘记将其包含在composer.json文件中。例如,如果您使用php5-imagick库,请在composer.json的"require"部分中添加以下行

"ext-imagick": "*"

如果您打算在Heroku上使用数据库(例如,“cleardb”),请确保它在 environments/heroku/common/config/main-local.php 中得到正确描述(默认情况下,此文件配置为连接到“cleardb”数据库)。如果您需要运行“migrate”命令,您可以通过Heroku的bash轻松完成。只需运行Heroku的bash

$ heroku run bash

然后运行migrate命令

$ php yii migrate