[VCCW] WP-CLI で VCCW 3 環境をかんたん構築する
VCCW のバージョンが上がっているので、導入からあらためて復習。
以前に触った記事はこちらからたどれます。
本稿の VCCW と依存するパッケージのバージョンは以下の通りです。
vagrant / 1.9.2
virtualbox / 5.1.16-113841
VCCW / 3.1.4
WP-CLI / 1.1.0
Composer / 1.4.1
scaffold-vccw / 1.3.0
なお以降の記事中において、%
ではじまるコマンドは Host OS (macOS) で、$
ではじまるコマンドは Guest OS (Ubuntu) で実行されていることを示しています。
Contents
Installation
公式サイトの Getting Started に沿って進めます。
VirtualBox と Vagrant
まず VirtualBox と Vagrant をインストールします。
さらに vagrant-hostsupdater plugin をインストールしておきます。
Vagrant: vagrant-hostsupdater で /etc/hosts を書き換える | deadwood
% vagrant plugin install vagrant-hostsupdater
さらに VCCW 用にカスタマイズされた vagrant box をダウンロードしておきましょう。
% vagrant box add vccw-team/xenial64
wp scaffold vccw
以前のバージョンは git clone
して環境を作っていましたが、v3 は .zip ダウンロードになっているとのこと。
WP-CLI コマンドの wp scaffold vccw
でこれをすませましょう。
(.zip を利用する場合は、以下の手順は不要です。)
vccw-team/scaffold-vccw: WP-CLI command that generates a new VCCW.
WP-CLI がインストールされていない場合は、brew でインストールできます。
% brew install homebrew/php/wp-cli
wp package install vccw/scaffold-vccw:@stable
でインストールが完了します。
% wp package install vccw/scaffold-vccw:@stable
Installing package vccw/scaffold-vccw (@stable)
Updating /Users/****/.wp-cli/packages/composer.json to require the package...
Using Composer to install the package...
---
Loading composer repositories with package information
Updating dependencies
Resolving dependencies through SAT
Dependency resolution completed in 0.061 seconds
Analyzed 4212 packages to resolve dependencies
Analyzed 119701 rules to resolve dependencies
Package operations: 1 install, 0 updates, 0 removals
Installs: vccw/scaffold-vccw:1.3.0
- Installing vccw/scaffold-vccw (1.3.0)
Writing lock file
Generating autoload files
---
Success: Package installed.
インストール済の場合は、下記でアップデートできます。
% wp package update
Fatal error: Allowed memory size of x bytes exhausted が発生する場合
実行時にメモリ不足のエラーが発生しました。
% wp package install vccw/scaffold-vccw:@stable
Installing package vccw/scaffold-vccw (@stable)
Updating /Users/****/.wp-cli/packages/composer.json to require the package...
Using Composer to install the package...
---
Loading composer repositories with package information
Updating dependencies
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in /usr/local/Cellar/wp-cli/1.1.0/vendor/composer/composer/src/Composer/DependencyResolver/RuleSetGenerator.php on line 126
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in /usr/local/Cellar/wp-cli/1.1.0/vendor/composer/composer/src/Composer/DependencyResolver/RuleSetGenerator.php on line 126
php.ini
の場所を探します。
% php --ini
Configuration File (php.ini) Path: /usr/local/etc/php/7.1
Loaded Configuration File: /usr/local/etc/php/7.1/php.ini
Scan for additional .ini files in: /usr/local/etc/php/7.1/conf.d
Additional .ini files parsed: (none)
memory_limit = 128M
でしたので、これを増やします。
; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit = 512M
以上でインストールを完了することができました。
追記:2017/03/23
実行時に指定する方法があるようです。
Usage
インストールが完了しましたので、早速プロジェクトを開始してみましょう。
% wp scaffold vccw wordpress.dev --lang=ja
Success: Generated. Run `vagrant up`.
wordpress.dev というディレクトリにファイルが展開されました。
.
├── LICENSE
├── README.md
├── Vagrantfile
├── ansible.cfg
├── provision
│ ├── default.yml
│ ├── playbook.yml
│ └── playbooks
│ ├── commands.yml
│ ├── middleware.yml
│ ├── templates
│ │ ├── composer.json
│ │ ├── extra-wp-config.php
│ │ ├── guest-wp-cli-config.yml
│ │ ├── index.php
│ │ ├── mailcatcher.service
│ │ ├── multisite-htaccess
│ │ ├── site.conf
│ │ └── vccw.sh
│ └── wordpress.yml
└── site.yml
既に site.yml が生成されていますので、ディレクトリに移動して、vagrant up
します。
% cd wordpress.dev
% vagrant up
以上で完了です。
.zip の場合
.zip を展開した方は、vccw というディレクトリが作られたはずです。
provision/default.yml
を元に site.yml
を作成、編集が必要になります。
wp scaffold vccw –update でバージョンアップに対応する
wp scaffold vccw
を利用している場合、--update
オプション付きの実行で VCCW をバージョンアップできます。
この例の場合は、下記で関連ファイルがバージョンアップされます。
% wp scaffold vccw wordpress.dev --update
補遺
v3
wp scaffold vccw
WP-CLI
v2
- VCCW 2.0.0 – 設定をymlファイルで記述する仕様に変更しました。 | Firegoby
- VCCW 2.19.0 Linked Cloneに対応してディスク容量の大幅な節約ができるようになりました。 | Firegoby
v1
- VCCWでテーマレビュー用のWordPressをてっとりばやく起動する裏ワザ | Firegoby
- VCCW 1.7 wp-cliのパワーアップやテーマレビューのための機能を追加しました。 | Firegoby
その他
MailCatcher
StaticPress