【 無料 Dockerfile あり 】EC-CUBE2 を Docker で構築してみた

2022/03/06

今までお世話になった会社を辞め、新年から新しい職場に働くことになりました。

新しい職場では EC-CUBE2 を触る機会があるとのこと。

予習を含めて Docker でローカル環境を構築してみました。

今回は、EC-CUBE2 を Docker で構築した記事をエントリーします。

EC-CUBE2のローカル環境を Dockerfile で作成しました。

Git Hub で公開しているのでよかったら使ってください。

honjou / docker-eccube2(Git Hub)

 

INDEX

 

EC-CUBE2とは

EC-CUBE(イーシーキューブ)とは、株式会社イーシーキューブ(日本企業)が開発するオープンソースの EC 向けコンテンツ管理システム(CMS)のことです。

大手 EC パッケージの多くは有料ですが、EC-CUBE は無料で使用できます。

改変も自由なので、カスタマイズやプラグインの導入によって、定期購入や BtoB サイト・オンライン予約など、様々な販売形態にも対応できます。

また、EC-CUBE は EC サイト運営に必要な基本機能が無料とは思えないほど網羅されています。

  • 認証機能
  • 商品管理
  • 受注管理
  • 会員情報管理
  • コンテンツ管理
  • メルマガ配信
  • 売上集計

EC-CUBE のバージョンですが、現在はver 4まであります。

ただ、バージョン2も根強く人気があり、3系、4系に先行して、一早くPHP7.4に対応しました。

EC-CUBE2 は一番長くサポートされるバージョンとなっています。

カスタマイズも2系が一番しやすいみたいで、新天地でもこの2系を触ることになりそうです。

それでは、実際にEC-CUBE2のローカル環境を構築してみましょう。

 

EC-CUBE2の環境構築手順

1)Dockerfile のダウンロード

Dockerfile については僕のほうで作成しました。

Git Hub で公開しているのでよかったら使ってください。

honjou / docker-eccube2(Git Hub)

※「code」と書いてある緑ボタンをクリックすると「Download ZIP」という項目があります。git clone コマンドが苦手な人はZIPでダウンロードしてみてください。

※ダウンロードしたファイルはホームディレクトリがわかりやすいかと思います。Windows の場合だと Cドライブ > ユーザー > user(Windowsアカウント名)になります。

【 ディレクトリ構成 】
ec-cube2
 ┣ docker(docker本体)
 ┣ src(laravel本体)
  ┗ eccube2 ← ※EC-CUBE2.17 のデータを格納
 ┣ .gitignore
 ┣ docker-compose.yml
 ┣ README.md

 

2)EC-CUBE2.17をダウンロード

EC-CUBE2.17系を公式のページからダウンロードします。

EC-CUBE2.17系(公式)

ダウンロードが終わったら、src/eccube2 フォルダに格納してください。


 

イメージの作成&起動

GitBash もしくターミナルを開いてLinuxコマンドを実行していきます。

Windows ユーザーの方は GitBash を入れましょう。

Linuxコマンドの "cd" を使って、docker-compose.yml と同じ階層までいきます。

その後、以下のコマンドを実行


# Dockerfile からイメージを作成し、起動する。
$ docker-compose up -d –-build

 

 

DBを確認

上記のコマンドを実行し、Dockerイメージが作成され起動したら、phpMyAdmin で DB を確認します。

http://localhost:8080 にアクセスします。

 

ユーザー:eccube2_user
パスワード:eccube2_pass

を phpMyAdmin に入力してログイン。

以下のように「eccube2_db」が確認できれば OK です。

照合順序は「utf8_general_ci」にする必要があります。
僕が用意しているDockerfileでは既にその設定をしています。

 

EC-CUBEの設定画面にアクセスする

DB の確認が終わったらブラウザにアクセスして EC-CUBE の設定を行いましょう。

http://localhost にアクセスします。

http://localhost/install にリダイレクトされます。

はじまりの画面で「次へ進む」ボタンをクリック。

 

以下、画面の指示に従って操作を行っていく

「次へ進む」ボタンをクリック。

 
「次へ進む」ボタンをクリック。

 
必要記入項目を入力します。

「管理機能の設定」の「ディレクトリ」は管理画面のURLになります。

ここでは「manage」にしました。

「次へ進む」ボタンをクリック。

 
データベースの情報を入力します。

入力する情報は「docker-compose.yml」にある「environment」で設定している情報を入力します。(※パスワードは "eccube2_pass" になります。)

「DBサーバー」の項目はコンテナ名(eccube2_db)を入力します。
※「localhost」や「127.0.0.1」ではないので注意!

 
ここからデータベースの作成が始まります。

「次へ進む」をクリック。

 
以下の画面のように無事データベースが作られたらOK。

「次へ進む」をクリック。

 
株式会社イーシーキューブに情報提供を求められます。

別に情報を提供しても構わない人は「はい」のままで。

 
下記のような画面になれば設定は完了です。

「管理画面へログインする」ボタンを押してみましょう。


 
EC-CUBEの管理画面へのログイン画面が表示されます。

「>> インストール完了後に /install フォルダを削除してください。」

のメッセージを削除します。

 
src > eccube2 > html ディレクトリに install ディレクトリがあるので削除します。

 
すると下記の画面のように、メッセージが消えます。

 
先ほど EC-CUBE の設定画面で設定したログイン情報を入力してログインしてみます。

下記のような画面になればOKです。

 
ユーザーに閲覧してもらうフロントの画面は http://localhost にアクセスすると見れます。

 

EC-CUBE2のログファイル

EC-CUBE のログの出力先は、/data/logs/ 配下です。

以下の通り、管理画面で標準可能なログと対応しています。

  • 標準ログファイル: site.log
  • 管理機能ログファイル: admin.log
  • エラーログファイル: error.log
標準ログファイル: site.log

 

管理機能ログファイル: admin.log

 

エラーログファイル: error.log

最後はエラーログ。ここのログファイルは一番利用しそうですよね。

 
以上です。

 

本庄マサノリ

仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら

>> Twitter をフォローする

 

-周辺知識