[ECCUBE] GCPでECCUBE4事始め

ECCUBE4が正式リリースされたのが2018年10月。今が2019年6月なのでもう半年以上経ちました
まだ実際の案件として話は出てきてないんだけど、そろそろどんなものなのか触っておこうかと思いました

開発ドキュメントをざっとみたところ3.0よりも随分カスタマイズしやすくなってる予感!

GCPでLAMP環境立ち上げ

昔の印象が強いのか、どうしてもECCUBEはMySQLはダメでPostgreSQL推奨な気がしてしまいます
4系がどうなってるのかわからないけども、とりあえずは昔の印象通りLAPP (Linux+Apache+PostgreSQL+PHP) で構築してみます

初出ではLAPPで環境作成していましたが、後ほどカスタマイズする際にdoctrine:schema:updateでエラーを吐くため、LAMP(PostgreSQLではなくMySQL)で環境をつくるように変更しました
昔と違って今のECCUBEはMySQLのほうがよく検証されているのかな

Marketplaceにちょうどいいものがありましたのでこれを採用
LAPP Certified by Bitnami
LAMP Certified by Bitnami

さっそくデプロイ

ECCUBE4のインストールと設定

環境ができあがったら早速SSHログインしてみます
これ、最初からcomposerまで入ってる!
ほんとに手間なくていいなあ
次のステップとして初期パスワードを変えろとか静的IPにしたらとか出てるけど、ECCUBEのお試しができたら捨てるつもりの環境なのでそれらは無視して進めます

なんとなくbitnamiの流儀に従って/opt/bitnami/appsにECCUBEをインストールします

$ sudo chmod 777 /opt/bitnami/apps
$ cd /opt/bitnami/apps
$ sudo composer self-update
$ composer create-project ec-cube/ec-cube ec-cube "4.0.x-dev" --keep-vcs

composerをログインユーザで進めるとcacheを作る権限がないよと警告が出ていますが今は気にしない
暫く待つとインストール完了します

続いてECCUBEの動作設定をします
bitnamiの標準ではMySQLのrootユーザのパスワードはサーバ管理者と同じになっているそうです
管理者パスワードはGCPでデプロイしたときに表示されてるやつですね
本番ならrootユーザで運用なんてしないけど、今回はお試しなので手っ取り早く別ユーザー作らずにrootでいきましょう
データベース名はわかりやすく”eccube”で
Databaseの項目以外はデフォルトのまま設定を進めます

$ cd ec-cube
$ bin/console eccube:install
Database Url [sqlite:///var/eccube.db]:
> mysql://root:<管理者パスワード>@localhost/eccube
Database Server version [auto]:
>
Mailer Url [null://localhost]:
>
Auth Magic [9Vst7fuQkJUTZo8o]:
>

!                                                                                                                      
! [CAUTION] Execute the installation process. All data is initialized.                                                 
!                                                                                                                      

Is it OK? (yes/no) [yes]:
>

開発ドキュメントで書き込み権限が必要と書かれているディレクトリ・ファイルのパーミッションを変更しておきます

$ sudo chmod 777 .
$ sudo chmod 777 app
$ sudo chmod 777 app/Plugin
$ sudo chmod 777 app/PluginData
$ sudo chmod 777 app/proxy
$ sudo chmod 777 app/template
$ sudo chmod 777 html
$ sudo chmod 777 var
$ sudo chmod 777 vendor
$ sudo chmod 666 composer.json
$ sudo chmod 666 composer.lock
$ sudo chmod 666 .env
$ sudo chmod 666 .htaccess

Apacheの設定

ECCUBEの準備もできたのであとはapache設定

$ sudo sed -i -e 's/\/opt\/bitnami\/apache2\/htdocs/\/opt\/bitnami\/apps\/ec-cube/g' /opt/bitnami/apache2/conf/bitnami/bitnami.conf
$ sudo apachectl restart

これで http://<GCPのIPアドレス> でサイトが表示されました!

管理画面は http://<GCPのIPアドレス>/admin ですね
ID: admin PW: password
仮運用とはいえこれは単純すぎるのでログイン後に変更しておかないと

ここまで、なにもないゼロからECCUBE立ち上げまであっという間。
良い世の中になったもんです。

ですが今回インストールが目的じゃないのです。
明日以降カスタマイズ方法を学んでみます。
ECCUBE4をカスタマイズしてみる

One Reply to “[ECCUBE] GCPでECCUBE4事始め”

  1. こちらの記事を元にGCPを使いEC-CUBEを表示することができました。とても参考になる記事ありがとうございます!
    しかし管理画面にログイン後、管理画面から編集するとエラーが出てしまい。パスワードなどが変更できません。
    デザイナーなので詳しい知識がなく、検索しても解決策が出ていないのでご連絡いたしました。
    エラーは
    HTTP 500 Internal Server Error
    SQLSTATE[HY000]: General error: 8 attempt to write a readonly database
    と記載のあるエラーとなります。
    お忙しいところ恐縮ですが、もしわかれば解決策をアドバイスいただけますと助かります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です