KUSANAGIのプロビジョニング

KUSANAGIのプロビジョニング

初期設定ができたら、KUSANAGIでWordPress などを使用するためのプロファイルを作成します。

これにより、Webサーバの設定ファイル、MySQLのデータベースや、ドキュメントルートなどがプロビジョニング(配置)されます。

KUSANAGI では、WordPress(デフォルト)、Concrete5、Drupal8、LAMP をプロビジョニングできます。

1. kusanagi provision コマンドの実行

KUSANAGIのプロビジョニングは、以下のコマンドを使うことができます。
オプションを指定しない場合は、WordPressがデフォルトでインストールされ、必要な設定は対話式で選択していきます。

# kusanagi provision [options] 【任意のプロファイル名】

プロビジョニングの種類
KUSANAGIでプロビジョンするタイプを[options]に指定することで、インストールするアプリケーションを選ぶことができます。

  • --WordPress を指定すると、WordPress をプロビジョニングします。
  • --concrete5 を指定すると、Concrete5 をプロビジョニングします。
  • --drupal7 を指定すると、Drupal7 をプロビジョニングします。
  • --drupal8 を指定すると、Drupal8 をプロビジョニングします。
  • --lamp を指定すると、LAMP(Linux+Apache+MySQL+PHP) もしくは LEMP(Linux+NGINX+MySQL+PHP)で使用するための設定のみをプロビジョニングします。
  • --rails を指定すると、Ruby on Rails をプロビジョニングします。この時のプロファイル名はRailsのプロジェクト名として有効な名前である必要があります。
  • --WooCommerce もしくは --wooを指定すると、WordPress と同時にWooCommerceプラグインとStoreFrontテーマをインストールします。

WordPressをデフォルトでインストールする場合は、下記の用に指定します。
入力例)# kusanagi provision kusanagi_html

上記の例では /home/kusanagi/kusanagi_html/というディレクトリが作成され、この中にドキュメントルートが作成されます。WordPressのインストールに必要なデータが格納されます。
オプションを指定しない場合は、WordPressがデフォルトでインストールされます。

オプションを指定する場合は、下記のように指定します。
入力例)# kusanagi provision --WrodPress kusanagi_html
入力例)# kusanagi provision --concrete5 kusanagi_html

Target directory is /home/kusanagi/設定したディレクトリ名.

上記のように表示されますので、そのまま次へ進みます。

2. WordPressの言語選択

プロビジョニングタイプにWordPressを選んだ場合は、WordPressのインストール時の言語選択を行います。対話形式で en_US か ja を選択します。

Choose the installation language of WordPress.

1 : en_US
2 : ja

q : quit

Which do you choose?

言語選択した結果、下記のように表示されます。

You choose: ja

3. ホスト名の設定

作成するプロファイルで使用するホスト名(FQDN) を入力します。

Enter hostname(fqdn) for your website. ex) kusanagi.tokyo

例 : www.example.com
※http://や末尾の/は不要です。

ホスト名を入力すると次のように表示されるので、確認用として同じホスト名を再度入力します。

Re-type hostname(fqdn) for your website.

4. Let’s Encryptの設定

指定したホスト名に対応するLet’s EncryptのSSL証明書を発行します。

Let’s Encryptは認証局(CA)として「SSL/TLSサーバ証明書」を無料で発行するプロジェクトです。
詳細は公式サイトをご覧ください。
こちらにメールアドレスを入力することでLet’s Encryptの使用に同意したことになります。

Let’s Encryptを設定する場合は、以下のメッセージが表示され、対話的にEmail アドレスを指定します。

In order to use Let's Encrypt services, you must agree to Let's Encrypt's Term of Services.
If you agree this TOS, put in your e-mail address, otherwise carriage enter key.
TOS of Let's Encrypt : https://letsencrypt.org/repository/

メールアドレスを入力します。
例:kusanagi@example.com

入力すると次のように表示されるので、確認用としてメールアドレスを再度入力します。

Re-type mail address.

Let’s Encryptを使用しない場合は、入力は行わず空のまま2度エンターキーを入力してください。

※ Let’s Encryptは、ドメイン認証によるSSL/TLSサーバ証明書です。利用するには、認証の仕組み上、取得するFQDNの名前解決ができること、httpのアクセスに認証がかかっていないことが必要です。また、Let’s Encryptのドメイン単位での利用制限が定められており、仮想マシン作成時にクラウドより付与されるDQDNは利用できません。
※ Let’s Encryptは、プロビジョニング完了後でも kusanagi ssl コマンドにて、設定することが可能です。詳しくは、kusanagi ssl のドキュメントを参照してください。

5. データベース名の設定

データベース名を設定します。

Enter the name of your database.

データベース名を入力すると次のように表示されるので、確認用としてデータベース名を再度入力します。

Re-type database name you create.

※ここで設定したデータベース名は後ほどWordPress、Concrete5、Drupal8 のインストール設定の際に使用します。忘れないよう控えておいて下さい。

6. データベースのユーザー名の設定

5で作成したデータベースのユーザー名を設定します。

以下のメッセージが表示されるので対話的に任意のユーザー名を入力します。

Enter user name for database '作成したデータベース名'.

ユーザー名を入力すると下記のように表示されるので、確認用としてユーザー名を再度入力します。

Re-type user name for database '作成したデータベース名'.

7. データベースユーザーのパスワードの設定

5で作成したデータベースユーザーのパスワードを設定します。
以下のメッセージが表示されるので、対話的に任意のパスワードを入力します。

Enter password for database user '作成したデータベースユーザー名'. USE [a-zA-Z0-9.!#%+_-] 8 characters minimum.

入力すると下記のように表示されるので、確認用としてパスワードを再度入力します。

Re-type password for database user '作成したデータベースユーザー名'.

8. プロビジョニングの完了

「7. データベースユーザーのパスワードの設定」が完了すると、WordPressの場合には下記のように表示されます。
これでプロビジョニングは完了です。
※ サイズやアドレス等はWordPressのバージョンなどによって変わります。また、CentOSの言語設定によっても表示が変わります。

Target directory is /home/kusanagi/aws03.
--2016-09-06 16:54:47--  https://ja.wordpress.org/latest-ja.tar.gz
Resolving ja.wordpress.org (ja.wordpress.org)... 66.155.40.250, 66.155.40.249
Connecting to ja.wordpress.org (ja.wordpress.org)|66.155.40.250|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8421826 (8.0M) [application/octet-stream]
Saving to: ‘wordpress.tar.gz’

100%[=========================================================================================================================>] 8,421,826   5.92MB/s   in 1.4s   

2016-09-06 16:54:49 (5.92 MB/s) - ‘wordpress.tar.gz’ saved [8421826/8421826]

Let’s Encryptの設定を行っていた場合には以下のような表示も行われます。

IMPORTANT NOTES:
 - If you lose your account credentials, you can recover through
   e-mails sent to 設定したメールアドレス.
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/設定したドメイン/fullchain.pem.
   Your cert will expire on 2016-05-04. To obtain a new version of the
   certificate in the future, simply run Let's Encrypt again.
 - Your account credentials have been saved in your Let's Encrypt
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Let's
   Encrypt so making regular backups of this folder is ideal.
 - If you like Let's Encrypt, please consider supporting our work by:

    Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
    Donating to EFF:                    https://eff.org/donate-le

最後に以下のような表示がされていればプロビジョニングは完了です。末尾の「WordPress」の部分は、プロビジョンタイプによって異なります。

Provisioning of 設定したディレクトリ名 completed. Access 設定したドメイン and install WordPress!

続いて、ブラウザからプロビジョン時に指定したホスト名(FQDN)にアクセスし、サイトの初期設定を行います。

プロビジョンタイプがLAMPのときは、この後の作業は必要ありません。ただし、DocumentRoot 以下に何もファイルが配置されていないので、別途PHPアプリケーションを配置する必要があります。

プロビジョニングコマンドの詳細は、provision [profile]ページを参照してください。