第2回 Bluemix × SoftLayer ユーザーグループ合同勉強会@北陸 〜IBMクラウドサービスを使って遊ぼう〜でハンズオンさせてもらった,「WordPress on Bluemix ハンズオン」の内容を書いていきたいと思います.
ハンズオンの内容としては,手元の端末からCFツールを使ってBluemix上のPHPサーバーにWordPressのソースをデプロイするというものです.
大きく分けて,以下のように進めていきます.
・PHPサーバーの準備
・データーベースの準備
・CLIのインストール
・WordPressのソース準備
・デプロイ&確認
【PHPサーバーの準備】
ログインし,上部のコンソールから「計算」を選択します.
右上にある「+」ボタンをクリックしてPHPサーバーを作成していきます.
この画面では
・アプリ名
・ホスト名
・ドメイン
・価格プラン
を設定していきます.
アプリ名:一意となるようにします.「WordPress-◯◯◯(自分の名前など)」
ホスト名:アプリ名と同じになります
ドメイン:デフォルトの「mybluemix.net」そのまま
価格プラン:デフォルトの「デフォルト」そのまま
設定はこれだけなので「作成」ボタンを押して作成します.
PHPサーバーの作成はこれで完了です.
【データベースの準備】
上部のコンソールから「データ&分析」を選択します.
右上にある「+」ボタンをクリックしてデータベースを作成していきます.
「ClearDB MySQL Database」を選択します.
この画面では
・サービス名
・接続サービス
・価格プラン
を設定していきます.
サービス名:デフォルトの「ClearDB MySQL Database-〇〇」 そのまま
接続サービス:先ほど作成したPHPサーバーを選択
価格プラン:デフォルトの「Spark DB」そのまま
これで設定は終わりなので,「作成」ボタンを押して作成します.
データベースの作成はこれで完了です.
※PHPサーバーアプリの接続タブから「資格情報の表示」ボタンを押して表示される資格情報をメモしておくと後々楽です.
【CLIのインストール】
次は,CFコマンドラインインターフェイス・Bluemixコマンドラインインターフェイスのインストールを行います.
CloudFoundryをベースとしたPaaSであるBluemixは,CFコマンドラインインターフェイスを使用してデプロイなどの操作を行うことができます.
Bluemixコマンドラインインターフェイスは,CFコマンドラインインターフェイスをBluemix用にラップしたものです.
両方使用するので両方インストールします.
CFコマンドラインインターフェイスはこちらからダウンロードできます.
(お使いの環境に合わせてダウンロードしてください)
https://github.com/cloudfoundry/cli/releases
Bluemixコマンドラインインターフェイスはこちらからダウンロードできます.
(こちらもお使いの環境に合わせてダウンロードしてください)
http://clis.ng.bluemix.net/ui/home.html
ダウンロードしたファイルを使用してインストールします.
(表示に従って進めていけばインストールできるので説明略)
以下のコマンドでそれぞれバージョンが表示されればインストール完了です.
[bash gutter=”false”]
$ sudo cf -v
[/bash]
[bash gutter=”false”]
$ sudo bluemix -v
[/bash]
【WordPressのソース準備】
WordPressのソースをダウンロードします.
https://ja.wordpress.org/wordpress-4.5.3-ja.zip
ダウンロードしたzipファイルを解凍し,デプロイ用の適当なディレクトリに格納します.
(写真の例はDesktopに「Deploy」ディレクトリを作成して格納)
wordpress/wp-content/以下に
・uploads
・upgrade
ディレクトリを作成します.
wordpress/wp-config-sample.phpをwordpress/wp-config.phpにリネームして、以下内容に変更します.
(資格情報の表示で表示されたDBの資格情報を入力)
[text gutter=”false”]
define(‘DB_NAME’, ‘(環境変数name 値)’);
define(‘DB_USER’, ‘(環境変数username 値)’);
define(‘DB_PASSWORD’, ‘(環境変数password 値)’);
define(‘DB_HOST’, ‘(環境変数host 値) : (環境変数port 値)’);
define(‘FS_METHOD’, ‘direct’); /* 追加 */
[/text]
Deploy配下に「.bp-config」ディレクトリを作成し,
.bp-configフォルダ配下に以下の内容の「options.json」作成します.
[text gutter=”false”]
{
"PHP_EXTENSIONS": [ "bz2", "zlib", "curl", "mcrypt", "mbstring", "mysqli", "pdo", "pdo_mysql" ]
}
[/text]
Deploy配下に空の「composer.json」作成します.
(空のJSON={})
PHPのバージョンの問題で,MySQLのライブラリが一部使用できないので,
wordpress/wp-includes/wp-db.phpの「mysql_connect」を「mysqli_connect」に変換します.
【デプロイ&確認】
デプロイしていきます.
コンソール(コマンドプロンプト)でデプロイ用のディレクトリに移動します.
Bluemixに接続します.
表示に従ってパスワードを入力します.
[bash gutter=”false”]
$ sudo bluemix api https://api.ng.bluemix.net
[/bash]
Bluemixにログインします.
表示に従ってパスワードを入力します.
[bash gutter=”false”]
$ sudo bluemix login -u (ユーザー名) -o (組織名) -s (スペース名)
[/bash]
デプロイします.
アプリケーション名にはPHPサーバーのアプリ名を入力します.
[bash gutter=”false”]
$ sudo cf push (アプリケーション名)
[/bash]
デプロイが完了したら,
http://(アプリケーション名).(ドメイン名)/wordpress/index.php
にブラウザでアクセスします.
WordPressのインストール画面が表示されたでしょうか?
表示されていれば成功です.
WordPressの環境をBluemix上に構築する手順を書きました.
WordPressのインストール方法は調べてもらえば分かると思うので割愛します.
PHPのサーバーがあっさり構築できるのは中々いいですね〜
ぜひWordPress環境を構築してみてください.