4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

EC-CUBEAdvent Calendar 2016

Day 13

EC CUBE3 が Heroku Buttonに対応したので見てみる

Last updated at Posted at 2016-12-13

EC CUBE3 が Heroku Button に対応しました。

公式のリポジトリにあるHeroku Button から簡単にEC CUBE3を立ち上げて動作を確認することが可能です。
管理画面についても admin / password でログインして簡単に入ることが出来るようになっています。

当然ですが、このまま本番運用するのはめちゃくちゃ危険なので、パット見た感じで気になった点などをまとめておきます。

実際に Heroku でEC CUBE を運用する際の参考にしてもらえれば…

管理画面のUSERのID/PASSWORDを変更する

管理USERのID/PASSWORDは デフォルトで admin/password になっており、非常に危険です。

テスト環境とはいえ、メール送信等の機能が有効になっていれば不正に利用される可能性もあるため、必ずこれは変更しておくほうがいいでしょう。

管理画面のユーザ設定周りは環境変数から読み込んで初期セットアップするように設定されています。
こんなのはセットアップのときにHeroku Button で聞いておいてもらえるほうが便利ですね。

以下にセットアップ済みのリポジトリがありますのでそちらのHeroku Button をご利用いただければ Heroku Buttonの起動画面にて初期ユーザのログインID/Passwordがセットアップ可能となっています。
(ちなみに1/1とかでも問題なくセットアップ出来るみたいです。)

Database の設定をうまいことHeroku対応する

この辺が一番の鬼門です。

Heroku Postgres の Dashboardにて Credential の項目を見ると次のような記述が見つかります。

Database Credentials

Please note that these credentials are not permanent.
Heroku rotates credentials periodically and updates applications where this database is attached.

Heroku Postgres のホスト名・ポート番号は定期的に変わります。なので、DBのパスワード等は動的に変わる値として設定されなければなりません。

EC CUBE3 のDB接続はYamlとかでべた書きとなっているので、代わりにPHPの設定ファイルを用いて、それを使用するよう変更してあげなければなりません。
(こういうこともあるので個人的にはあまりYamlの設定ファイルが好きになれない…)

この辺についても以下にセットアップ済みのリポジトリがありますので、コレを試すことができます。

以下の Heroku コマンドを実行してDBの認証情報をリセット(変更)出来るので、このコマンド実行後も引き続きECCUBEが起動していればOKです。

$ heroku pg:credentials DATABASE_URL --reset 

ここまでやると今度はローカル環境向けに.env対応とかが出てくるんですが、そのへんはまた別の機会に…

4
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?