新しい IBM Developer JP サイトへようこそ!サイトのデザインが一新され、旧 developerWorks のコンテンツも統合されました。 詳細はこちら

MariaDB を使用して WordPress アプリを作成し、OpenShift 上にデプロイする

現在、ほとんどの企業では、アプリケーションをクラウド・フレンドリーな方法で運用して将来的に簡単にスケーリングできるよう、コンテナー・ベースのアプリケーションを迅速、簡単にデプロイするための方法を必要としています。その方法としては、元来の Kubernetes や、Kubernetes をベースに構築された他のプラットフォームを選択することもできますが、Red Hat® OpenShift® を使用してデプロイすることをお勧めします。その利点は、高速であること、無料のカスタム・ドメイン、大容量のディスク・スペース、かなりの容量の MySQL ストレージを使用できることが挙げられます。Red Hat OpenShift は強力な Platform as a Service (PaaS) オファリングなので、従来のホスティング・サーバーのように速度が遅かったり効率性に欠けたりすることはありません。

包括的なエンタープライズ対応 Kubernetes プラットフォームとしての Red Hat OpenShift 4 では、フルスタックの自動化を実現するために Kubernetes Operator のイノベーションが駆使されています。Kubernetes はクラスター内のフィーチャーを自動スケーリングして Docker イメージのデプロイと管理を支援するため、OpenShift にはなくてはならない、重要な基礎となるテクノロジーです。

このチュートリアルでは、OpenShift コマンド・ライン・インターフェース (CLI) ツールと Web コンソールの両方を使用して、IBM Cloud 上の OpenShift で管理されたクラスターにアプリケーションをデプロイし、稼働中にする手順を説明します。この手順に従えば、皆さんにとって初となる WordPress アプリケーション・インスタンスをデプロイできます。

WordPress は、PHP プログラミング言語で作成された、オンラインで使用できる無料のオープンソース・ツールです。ブログ作成や、Web サイトのコンテンツ管理に使用するには、おそらく現在、最も簡単で最も強力なコンテンツ管理システム (CMS) であると言えます。WordPress には個人から大企業までのあらゆるユーザーがいます。WordPress ではバックエンド・データベース・エンジンとして MySQL または MariaDB を使用できます。現在、WordPress はコントリビューターからなる大規模なコミュニティーによって拡張、管理されています。

前提条件

このチュートリアルでは、OpenShift 4 クラスターが作成済みであることを前提とします。

また、Kubernetes の基礎知識があり、マイクロサービス・ソフトウェア・アーキテクチャーのコンセプトを把握していると理想的です。

手順に必要となる次のものをすべて揃えておいてください。

このチュートリアルでは、次のテクノロジーを取り上げます。

  • IBM Cloud: クラウド・コンピューティング・サービスのスイート。Platform as a Service (PaaS) と Infrastructure as a Service (IaaS) の両方の機能が含まれています。

  • Red Hat OpenShift Container Platform: 開発者と運用チームの両方を配慮した Kubernetes ディストリビューション。現在は Kubernetes をベースに稼動していますが、以前の OpenShift バージョンでは、別のメカニズムを使用してコンテナー・オーケストレーションに対処していました。OpenShift は、開発者と運用チームがコンテナー化されたワークロードを実行する際に利用できるツールを揃えています。

  • MariaDB: MariaDB は、世界で最もよく使われているデータベース・サーバーの 1 つです。MySQL の初代開発者たちによって作成された MariaDB は、オープンソースであり続けることが保証されています。

  • Docker: オープンソースのコンテナー化プラットフォーム。ラップトップ、データ・センター、VM、またはクラウド上で分散アプリケーションをビルド、配布、実行するために使用できます。

  • oc: OpenShift Origin CLI (oc) により、アプリケーションを管理するためのコマンドが公開されています。これらのコマンドには、システムの各コンポーネントとやりとりする下位レベルのツールが含まれます。

所要時間

このチュートリアルの所要時間は約 20 分です。

WordPress Web サイトを OpenShift 上にデプロイして MariaDB インスタンスに接続する

まず、IBM Cloud に登録してログインします。

Resource List (リソース・リスト) 」の下に「clusters (クラスター) 」セクションがあります。そのセクションを展開して、このチュートリアルのために作成した OpenShift クラスターを表示し、そのクラスターを選択します。

IBM Cloud 上のクラスターのコンソールには、「Access (アクセス) 」タブもあります。このタブに、チュートリアルで使用する OpenShift CLI ツールの情報とセットアップ手順が記載されています。

OpenShift CLI の情報が表示された、IBM Cloud コンソールのスクリーン・キャプチャー

以降のセクションで、このチュートリアルの手順を説明します。

ステップ 1: OpenShift ユーザー・インターフェースにアクセスする

以下のスクリーン・キャプチャーに示されている青色のボタンをクリックします。

OpenShift コンソールのボタンを示す画面のスクリーン・キャプチャー

クラスターの Web コンソールの右上を見ると、自動的に認証されてこのコンソールにログインしたこと、自分の資格情報を使用して OpenShift Container Platform サーバーとのセッションが確立されたことがわかります。

OpenShift クラスター・コンソールのスクリーン・キャプチャー

OpenShift CLI をダウンロードして正常にインストールしていれば、この CLI を使用してログインし、プロジェクトを作成できます。

OpenShift クラスターの Web ユーザー・インターフェースで、サービス・カタログ・ページ上の右上隅に示されている資格情報をクリックし、「Copy Login Command (ログイン・コマンドをコピー) 」を選択します。これにより、OpenShift Container Platform サーバー上のログイン資格情報を使用してライブ・セッション・トークンが生成されます。

IBM Cloud ログイン・ページのスクリーン・キャプチャー

注: 生成されるトークンは、パスワードの一種です。他のユーザーと共有しないでください。

ステップ 2: CLI からログインする

CMD/ターミナルを開き、ログイン資格情報を貼り付けます。ログイン・コマンドは、oc login + 生成されたライブ・セッション・トークンが付加されたサーバー URL の形になっています。

OpenShift にログインしたときの出力を示す画面のスクリーン・キャプチャー

上記の出力が表示されたら、oc CLI を使用して正常に OpenShift Container Platform サーバーにログインしたことになります。この出力に、利用可能な OpenShift プロジェクトがリストアップされます。

ステップ 3: プロジェクトを作成する

デプロイメントとリソースをホストするプロジェクトを作成します。

CMD/ターミナルから、以下のコマンドを実行します。

oc new-project <project-name>

oc new-project wordpress

ステップ 4: データベースと WordPress アプリを OpenShift 上にデプロイする

プロジェクトを作成した後は、WordPress アプリケーションをデプロイします。

まず始めに、バックエンドのデータベース・インスタンスを作成する必要があります。このチュートリアルでは、MariaDB インスタンスを作成します。CMD/ターミナルから、以下のコマンドを実行します。

oc new-app mariadb-ephemeral

注: MariaDB は永続ストレージを使用していないので、ポッドが破棄されると、保管したデータがすべて失われます。したがって、このチュートリアルではテストのためにサンプル・データベースを使用します。

MariaDB によって生成された情報 (MariaDB 接続ユーザー名、MariaDB 接続パスワード、MariaDB データベース名) をメモします。DB ホスト名としては、mariadb を使用してください。

MariaDB デプロイメントを示す画面のスクリーン・キャプチャー

これから WordPress をデプロイするので、PHP イメージを使用して Apache 上にプロジェクトを作成します。

CMD/ターミナルから、以下のコマンドを実行します。

oc new-app php~https://github.com/wordpress/wordpress

デプロイメントを追跡するには、以下のコマンドを実行してログを表示します。

oc logs -f dc/wordpress

WordPress デプロイメント・ログを示す画面のスクリーン・キャプチャー

WordPress が正常にデプロイされたら、WordPress にアクセスするために、以下のコマンドを使用して、WordPress をサービスとして公開します。

oc expose svc/<service>

oc expose svc/wordpress

次は、サービス・ルートに対してクエリーを実行し、生成されたホスト URL を取得します。それには、以下のコマンドを実行します。

oc get routes

生成されたホスト名をターミナルからコピーして、任意のブラウザー内で貼り付けます。デプロイされた WordPress アプリケーションのウェルカム画面が表示され、データベースを構成してセットアップを完了するよう求められます。この画面は、以下のスクリーン・キャプチャーのような内容になっているはずです。

データベース・デプロイメントの情報を求める、WordPress のウェルカム画面のスクリーン・キャプチャー

これで、1 つのプロジェクト内で MariaDB と WordPress の 2 つのリソースをデプロイしました。

Red Hat OpenShift コンソールの Web ユーザー・インターフェースに戻って、視覚的に確認することができます。「Refresh (更新) 」をクリックすると、新しく作成されたプロジェクトが「My Projects (マイ・プロジェクト) 」タブに表示され、作成した 2 つのリソースがリストアップされるはずです。

前に作成したデータベースの情報を使用して、WordPress のインストールを完了します。必要な情報を入力してから、「Install WordPress (WordPress をインストール) 」をクリックします。

WordPress が正常にセットアップされると、WordPress のログイン画面が表示されます。前に設定したユーザー名とパスワードを使用してログインしてください。

WordPress ログイン・ページのスクリーン・キャプチャー

WordPress ダッシュボードから、独自の WordPress Web サイトの構築を開始できます。

WordPress ダッシュボードのスクリーン・キャプチャー

左上隅にホーム・アイコンと一緒に示されている Web サイトの名前をクリックします。「View Site (サイトの表示) 」をクリックして Web サイトをプレビューします。以下のスクリーン・キャプチャーに、構築されてデプロイされた WordPress Web サイトを示します。

WordPress Web サイトのスクリーン・キャプチャー

まとめ

お疲れさまでした!これで、Red Hat OpenShift on IBM Cloud を利用して、コンテナー内から MariaDB インスタンスに接続する WordPress アプリケーションをデプロイする方法を習得できたはずです。

OpenShift を利用し始める方法を詳しく学ぶには、Red Hat OpenShift on IBM Cloud にアクセスして、そこに揃えられているさまざまな技術コンテンツを調べてください。例えば、「Kubernetes with OpenShift 101: Exercises to get you started with a local OpenShift environment」では、MiniShift を使用してローカル OpenShift 環境をローカル・マシン上にインストールする手順を説明しています。また、アプリケーションをデプロイして管理する基本的な方法を学ぶこともできます。