Heokuで既存アプリにビルドパックを適用させる
新規アプリを作成時にビルドパックを適用する方法は
以前に書いたのですが、すでに作成しているいアプリに適用させる必要が出たので
調べてみました。
結論から言うと、公式にありました。
Buildpacks | Heroku Dev Center
実際に適用させてみます。
(myapp
となっている箇所は変更して下さい。)
まず、適用したいアプリを任意のフォルダにclone
。
$ git clone git@heroku.com:myapp.git
で、上記のURLを参考に、ビルドパックを適用させる。
PHPでmbStringが使いたいので、以下のカスタムビルドパックを指定した。
(PHPが公式にサポートされたけれど、mbStringは入ってないっぽい。
公式分でのmb環境構築方法がわかればまたメモします。)
heroku config:set BUILDPACK_URL=https://github.com/iphoting/heroku-buildpack-php-tyler.git#php/5.4.9
適当にファイルを作って、コミットして、プッシュ。
プッシュ時にデプロイされるので、そこでビルドパックも適用される。
$ echo '<?php phpinfo();' > index.php
$ git add .
$ git commit -m 'initial commit'
$ git push heroku master
しかし、このpushの段階で怒られる。
fatal: Could not read from remote repository.
ググると、herokuにremoteでaddしないといけない模様。
参考:Railsでtwitterサービスをつくる(続きの続き) – ありえないなど、ありえない
$ git remote add heroku git@heroku.com:myapp.git
$ git push heroku master
再度pushすると無事、デプロイが完了し、PHP環境が出来上がりました。