wordmoveの利用・デプロイ

続いて、wordmoveを利用したデプロイが行えるように設定していきましょう。

wordpress用フォルダの作成

まずは、chownコマンドで、ドキュメントルートについてapacheユーザーとapacheグループの所有として設定します。

conohaのVPSにおけるドキュメントルートは/var/www/htmlです。

sudo chown -R apache:apache /var/www/html

さらにパーミションでグループへの書き込み権限を設定します。

sudo chmod -R 775 /var/www/html

最後に、作成したユーザーをapacheに所属させます。

sudo usermod -aG apache [ユーザー名]

wordpressで利用するデータベースの作成

wordpressで利用するためのデータベースを作成します。 今回はDB名をwordpress_dbとします。

mysql -u root -p -e "CREATE DATABASE wordpress_db;"

mysqlのrootユーザーのパスワードが要求されます。 sshでvpsにログインする際に毎回表示されますので、確認して入力しておきましょう。

これで、conoha側の設定は完了です。

vagrant側の設定

続いて、ローカル環境側の設定を行いましょう。

まずは、vccwで作成したフォルダに移動し、vagrant upで仮想環境を立ち上げます。立ち上がったらvagrant sshで仮想環境内にログインしましょう。

cd /vagrant
wp scaffold movefile

上記のコマンドで、synced_folderに移動し、Movefileの雛形を作成することが可能です。Movefileとは、WordPressのデプロイツールであるwordmoveの設定ファイルです。

Movefile.ymlの記述

作成したMovefileはshared_folder内に作成されるため、MacOSの側からテキストエディタで編集することが可能です。Movefile.ymlを開くと

Movefile.yml

(中略)
production:
  vhost: "http://example.com"
  wordpress_path: "/var/www/your_site" # use an absolute path here

  database:
    name: "database_name"
    user: "user"
    password: "password"
    host: "host"
    port: "3308" # Use just in case you have exotic server config
    mysqldump_options: "--max_allowed_packet=50MB" # Only available if using SSH

  exclude:
    - ".git/"
    - ".gitignore"
    - ".sass-cache/"
    - "bin/"
    - "tmp/*"
    - "Gemfile*"
    - "movefile.yml"
    - "wp-config.php"
    - "wp-content/*.sql"

  ssh:
    host: "host"
    user: "user"
    port: 22
    rsync_options: --verbose

上記のような部分があります。 これを

Movefile.yml

production:
  vhost: "http://[VPSのIPアドレス]"
  wordpress_path: "/var/www/html" # use an absolute path here

  database:
    name: "wordpress_db"
    user: "root"
    password: "[mysqlのrootのパスワード]"
    host: "localhost"
    port: "3308" # Use just in case you have exotic server config
    mysqldump_options: "--max_allowed_packet=50MB" # Only available if using SSH

  exclude:
    - ".git/"
    - ".gitignore"
    - ".sass-cache/"
    - "bin/"
    - "tmp/*"
    - "Gemfile*"
    - "movefile.yml"
    - "wp-config.php"
    - "wp-content/*.sql"

  ssh:
    host: "[VPSのIPアドレス]"
    user: "[設定したユーザー名]"
    port: 22
    rsync_options: --verbose

といった形に書き換えて保存しましょう。

wordmoveの利用

Movefile.ymlが出来上がったら、 vagrant側から

wordmove push --all

コマンドを実行しましょう。何度かパスワードを尋ねられますので、VPSで設定したユーザーのパスワードを入力しましょう。

エラーなく処理が完了したら、wordmoveを利用したwordpressのデプロイは完了です。VPSのIPアドレスにアクセスして、wordpressが設定されているのを確認しておきましょう。

参考リンク

VPS側wordpressの初期設定

wordmove push --allが終了した直後にVPSにアクセスすると、wordpressの設定画面になります。DB情報や登録ユーザー情報を入力して、wordpressを利用できる状況にしましょう。 最後にログイン画面からwordpressにログインできれば完了です。

ここまで完了したら、 vagrant sshでログインした仮想環境の側から

wordmove pull --all

を実行して、設定後の環境をローカル側にダウンロードしておきましょう。 今後は、ローカル側でもadminではなくVPS側のwordpressで登録したユーザー名、パスワードでログインできるようになります。

ローカル側のwordpressが一旦英語表記になりますので、 「setting」から

  • サイトの言語を日本、
  • timezoneをUTC+9

にすることで元どおりになります。

ローカル側の環境で記事を追加して、

wordmove push -d

でVPS側に追加した記事が反映されるか確認してみましょう。

また、テーマについても個別に同期することが可能です。 何らかのテーマをダウンロードして、

wordmove push -t

で追加したテーマがVPS側に反映されることを確認しておきましょう。

wordmoveのオプション一覧

オプション名 意味
--all ファイル全部
-w /wp-content/ディレクトリのみpush, pullする
-u /wp-content/upload/ディレクトリのみpush, pullする
-t /wp-content/theme/のみpush, pullする
-p /wp-content/plugins/のみpush, pullする
-l /wp-content/language/のみpush, pullする
-d データベースファイルのみpush, pullする
-v 様々な情報を表示しながら処理を行う
-s dry runモードで実行、実際にはファイル転送されないので、確認のために利用する
-e 環境(push先・pull元)を指定してpush, pullする
-c wp-config.phpのみpush, pullする
-h ヘルプを表示

results matching ""

    No results matching ""