公式にもインストール方法について記載はありますが、EC-CUBE範囲外の事項も多々あるので、備忘録代わりに開発環境の構築手順をメモ
※xamppでのインストール手順をかきました。とりあえず動かしてみたいかたは以下で。
http://qiita.com/chihiro-adachi/items/5fb2175454d3bfa047ac
ご注意(2015/04/16追記)
この記事で書いている構築手順は、PHPバージョンがEC-CUBE3のシステム要件を満たしていないなど少し問題があるので、あくまでも動作確認レベルとしてご利用下さい。
公式のvagrantに関する扱いは、以下で議論されています。
https://github.com/EC-CUBE/ec-cube/issues/1
環境
以下の環境を想定しています。
- ホスト環境
- Windows 7
- Virtual Box 4.3.26
- Vagrant 1.7.2
- ゲスト環境
- CentOS 6.6
- PHP 5.3.3
- PostgreSQL 8.4.20
Vagrantファイル
githubに上記環境を構築するVagrantファイルを置きました。
https://github.com/chihiro-adachi/eccube3-vagrant
手順
Vagrant/VirtualBoxインストール
上記バージョンの、VagrantとVirtualBoxをインストールします。
Vagrant起動まで
$ git clone https://github.com/chihiro-adachi/eccube3-vagrant.git
$ cd eccube3-vagrant
* vagrant起動
$ vagrant up
* 起動したゲストOSへログイン
$ vagrant ssh
EC-CUBEのインストール
注記:以下の手順はec-cubeの本家レポジトリからソースコードを落としてきてます。動作確認は可能ですが、pushやpull requestを送ることができないです。開発に参加してプルリクエスト送りたい!という人は、こちらを参考にしてください。
とりあえず動かしてみたい場合は以下で進めて問題ないです。
* 共有フォルダへ移動
$ cd /vagrant
* EC-CUBEのβブランチをclone
$ git clone -b eccube-3.0.0-beta https://github.com/EC-CUBE/ec-cube.git
$ cd ec-cube
* シンボリックでドキュメントルート以下に設定
$ sudo ln -s /vagrant/ec-cube /var/www/html/ec-cube
* install.shを環境に合わせて変更。
$ vi eccube_install.sh
※以下の箇所を変更
HTTP_URL=${HTTP_URL:-"http://192.168.33.10/ec-cube/html/"}
HTTPS_URL=${HTTPS_URL:-"http://192.168.33.10/ec-cube/html/"}
ROOT_URLPATH=${ROOT_URLPATH:-"/ec-cube/html/"}
* install.shを実行。初回は時間がかかります。
$ ./eccube_install.sh pgsql
※eccube_install.shでcomposer installも実行されているので、別途composerを動かす必要は無いです。
上記が完了したら、
http://192.168.33.10/ec-cube/html/
でアクセスすれば、トップページが表示される(はず)
MySQLを利用する場合
vagrant upを実行する前に
- /etc/mysql/my.cnfを追加
- (vagrantの)setup.shに追記
/etc/mysql/my.cnf
[client]
default-character-set = utf8
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8
setup.sh
# ---------------
# set up mysql
# ---------------
cp -f /vagrant/etc/mysql/my.cnf /etc/my.cnf
service mysqld start
chkconfig mysqld on
# ---------------
# set up ec-cube
# ---------------
sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON *.* TO cube3_dev_user@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;"
sudo mysql -uroot -e "FLUSH PRIVILEGES;"