この記事はMagento Advent Calendar 2015の三日目です。
前日のkzkiq2ndさんに引き続き、Magento1系の記事となります。
はじめに
今回はVM上にMagentoの開発環境を構築します。ゼロから構築するのではなくMagento development box with Vagrant and Chef Soloを元に、Magentoが動作する環境をローカルに作成することを目指します。私自身がMacbookで開発しているため、OS Xでのみ動作を確認しています。
インストールされるもの
- Ubuntu 14.04 LTS
- Magento CE 1.9.2.1
-
n98-magerun
Magentoをコマンドラインから操作するためのインターフェース - XDebug PHP のデバッグ用エクステンション
事前準備
Chef Development Kitのインストール
Chef Development Kitは、プロビジョニングツールであるChefの開発ツールを、まとめてクライアントにインストールするためのパッケージです。
リンク先から最新版のdmgファイルをダウンロードしてインストールしてください。
Virtualboxのインストール
Virtualboxは、LinuxOSやWindowsOSなどを動かすための仮想環境ソフトウェア・パッケージです。今回はOSX上でLinuxOS(Ubuntu)を動かすために使用します。
リンク先から最新版のdmgファイルをダウンロードしてインストールしてください。
Vagrantのインストール
Vagrantは仮想環境構築ソフトウェアです。Vagrantfileに記述された構成を元に、仮想環境を構築することが可能になります。
リンク先から最新版のdmgファイルをダウンロードしてインストールしてください。
追加でVagrantをChefでプロビジョニングするためのプラグインなどをインストールするため、ターミナルから下記コマンドを実行します。
$ vagrant plugin install vagrant-cachier
$ vagrant plugin install vagrant-omnibus
$ vagrant plugin install vagrant-berkshelf
$ vagrant plugin install vagrant-vbguest
$ vagrant plugin install vagrant-hostsupdater
プラグインのインストール中にffi関連のエラーが出て失敗したときは、ffiをアップデートするか、gemコマンドでffiをインストールしてみてください。
$ vagrant plugin update ffi
$ brew install apple-gcc42
$ gem install ffi
Composerのインストール
ComposerはPHPのパッケージ依存管理ツールです。
ターミナルから下記コマンドを実行してインストールしてください。
$ curl -sS https://getcomposer.org/installer | php
Magento環境の構築
Magento環境設定ファイルの取得
クライアントに作業ディレクトリ(例:~/workspace/vm/magento)を作成して、VagrantfileやChefのrecipeなどが含まれたファイル群をGitHubのリポジトリからcloneします。
cloneできたらVagrantfileが入っているディレクトリに移動してください。
$ mkdir ~/workspace/vm/magento
$ cd ~/workspace/vm/magento
$ git clone https://github.com/mike182uk/magento-dev-vagrant-chef-solo.git
$ cd ./magento-dev-vagrant-chef-solo
設定ファイルの変更
Magentoをインストールする前に、設定ファイルを編集します。通貨・地域・タイムゾーンを日本に変更してください。管理画面のユーザー・パスワードも変更可能です。
$ vi ./.n98-magerun.yaml
currency: JPY (<=GBPから書き換え)
locale: ja_JP (<=en_GBから書き換え)
timezone: ASIA/Tokyo (<=Europe/Londonから書き換え)
英語圏のサンプルデータは必要ないと思いますので、ChefのMagentoインストール設定ファイルを編集してmagerunのinstallSampledata
オプションをyes
からno
に書き換えます。
$ vi ./chef/cookbooks/magento-dev/templates/default/install-magento.erb
--installSampleData = no (<= yesから書き換え)
Vagrantの起動
Vagrantを起動(セットアップ)します。
$ vagrant up
続いてComposerで依存関係のあるPHPパッケージをインストールしてください。
$ composer install --prefer-dist
GitHubのAPI制限に引っかかる場合は、GitHubのユーザー・パスワードを入力するか、下記記事を参考にアクセストークンをComposerに設定しておいてください。
ComposerでGitHubのリポジトリをHTTPSで追加したときの認証設定
Magentoのインストール
これで全ての準備が整いましたので、Magentoのインストールスクリプトを実行します。
$ vagrant ssh -c "~/install-magento.sh"
以上でMagentoの環境がVM上に構築されました。ブラウザからwww.magento.devにアクセスして確認してください。
MySQLデータベースの接続情報についてはGitHubに記載されています。
明日はHoriuchi Fumioさんです。よろしく!