Drupal 8初心者講座

この記事の目次

汎用のクラウドサーバーサービスを利用する方法

まず、一般的なクラウドサーバーサービス上に Drupal サイトを構築する方法があります。この種のサービスとして、たとえば次のようなものが挙げられます。

これらは、CPU やネットワークといったサーバーインフラをサービスとして提供するものなので、その上で稼働するアプリケーション環境は基本的に自分で構築する必要があります。ただし、Drupal のような非常にメジャーなアプリケーションでは、導入に必要な情報や、最初から導入された状態でサーバーを立ち上げるオプションなどを用意しているサービスも増えています。例を挙げます。

AWSへのDrupal導入情報

Google CloudへのDrupal導入情報

AzureへのDrupal導入情報

さくらのクラウドへのDrupal導入情報

こうした情報を利用することで Drupal サイトを構築できますが、それぞれのサービスや Drupal 自体のインストールに関して一定の知識やスキルは必要になります。通常はそのサービス上でサイトを運営することが前提の選択肢になると思います。

異なるクラウドサービスを共通のUIで管理できるBitnamiの紹介

ところで、異なるクラウドサービスに一貫した手順でアプリケーションを導入できる興味深い製品として、前回も紹介した Bitnami があります。前回紹介したのはローカル版のインストーラでしたが、他にもブラウザだけで試せる(Bitnami のクラウドサービス上で動かす)デモ版、Docker コンテナ版のほか、クラウド版もあります。

https://bitnami.com/stack/drupal

クラウド版は、Bitnami のサービスが提供する共通の管理 UI を通じて、複数のクラウドサービスに Drupal のようなアプリケーションを簡単に導入・稼働させる機能で、現在 AWS、Azure、GCP など7つのクラウドサービスに対応しています。

article5_0

Bitnami Drupal Stack クラウド版の管理画面

クラウドサービス上の自分のアカウントにアクセスするための資格情報を Bitnami 側に登録しておくことで、Bitnami のサービス上の UI から数回のクリックとオプション指定で、各社のクラウドサービス上に Drupal サイトを構築できます。

article5_1

導入アプリケーションに必要な情報とサーバーのオプションを指定してインストールできる

また、こうした外部のクラウドサービスを利用する方法のほかに、Bitnami 自体もクラウドサービスを提供しており、このサービス上に Drupal を導入することもできます。サービス間の連携が必要ない分、この方が簡単です。

article5_2

Bitnami のクラウドサービス上に Drupal をインストールする画面

サーバーの設定からアプリケーション導入まで簡単・確実に完了できるので、クラウドサービスの基本的な知識があれば、Drupal を含むさまざまなアプリケーションを手軽に試してみることができます。なお、正式に利用する場合は、いずれのサービスも課金が発生する事んに注意してください。無料サービスの範囲を上手に利用すれば、あまりコストをかけずにクラウド上の Drupal を試すことができると思います。

Drupal 専用のサービスを利用する方法

インフラに加えて、Drupal を動かすための LAMP スタックと Drupal をセットにして、すぐに使える環境を提供するサービスもあります。こうしたサービスでは環境が最初から Drupal に最適化されているほか、開発や運用に関するサポートも用意されているものが多く、環境全体をアウトソースする場合の選択肢となります。具体例をいくつか紹介します。

Acquia Cloud

Acquia は、Drupal の創始者である Dries Buytaert 氏が共同設立者であり CTO を務める企業です。Acquia Cloud は、Drupal に最適化された同社のクラウド サービスで、種々の開発支援ツールや高度な信頼性を特徴とします。前回紹介した Acquia Dev Desktop も同社の製品ラインに含まれ、ローカル環境で構築したサイトを同サービス上の環境と同期させる機能も提供しています。詳しくは、Acquia 社のサイトを参照してください。

https://www.acquia.com/products-services/acquia-cloud

Pantheon

Pantheon は、第1回で紹介した DeanSpace の Zack Rosen 氏が仲間と設立した会社です。AWS 上で Drupal と Wordpress に特化したホスティングサービスを提供しています。Pantheon のサービスは、最初から開発用のサイトとステージング用のサイトが用意されるなど、開発者指向である点が特徴です。

https://pantheon.io/

Pantheon を利用した Drupal 8 のインストール手順については、弊社監修の『Drupal 8 スタートブック―作りながら学ぶWebサイト構築』や ThinkIT での連載『初心者でも挫折しないゼロから始めるDrupal 8入門』に詳しくまとめていますのでご覧ください。また、『Pantheon で構築した Drupal 8サイトを別の環境に移動する方法』を ANNAI マガジンに掲載していますので、こちらも合わせてお役立てください。

simplytest.me

上の2つとは少し趣旨の異なるサービスで、Drupalのコアや、拡張モジュールやテーマをテストするためのサンドボックス環境です。特定バージョンのコアのほか、モジュールやテーマ本格的に使用する前に、試しに入れて動かしてみることができます。

http://simplytest.me/

トップページでコアのバージョンと追加インストールしたいモジュールやテーマのプロジェクトを入力して [Launch sandbox] をクリックすると、必要なファイルをサービス上でダウンロードし、準備ができたところでインストーラが起動します。あとは、インストーラの指示に従ってインストールするだけです。起動したサイトは現状、24 時間で無効となり自動的に削除されます。

article5_3

simplytest.me で Drupal 8 をインストールする例

永続的に運用するサイトには使えませんが、試用やテスト、デモなどに利用するには非常に使い勝手の良いサービスです。24 時間以内で終わるチュートリアル用の環境としても利用できると思います。patrickd 氏が開発した無料のサービスですが、気に入った場合は gratipay(OSS 等への少額出資サービス)を通じて寄付も受け付けています。

一般的なレンタルサーバーを利用する方法

汎用のレンタルサーバー上に Drupal サイトを構築することも、もちろん可能です。Drupal の動作確認を明示するサーバーも増えてきました。Drupal の稼働実績があるサーバーとして、例えば次のようなものがあります。

エックスサーバー

動作確認済みプログラムとして Drupal 7 と Drupal 8 が明記されています。

 https://www.xserver.ne.jp/manual/man_install_outside_program.php 

特別な設定は不要で、同サーバーのマニュアルに従って Drupal サイト用のデータベースを用意しておけば、あとはローカル環境とほぼ同様の手順でインストールできます。

さくらのレンタルサーバー

利用者が多いこともあり、Drupal のインストールに関する情報も多く発信されているレンタルサーバーです。ただし、このサーバーは、Drupal 標準の .htaccess で使用されている Options という指定が禁止されており、"500 Internal Server Error" というエラーが発生するため、この指定を無効にした専用の .htaccess に差し替える必要あります。Drupal を動かすにはやや手間のかかるサーバーですが、情報は豊富に見つかります。Drupal の国内コミュニティでもよく話題に上り、弊社スタッフもサポート含め活発に情報を提供しています。

例: 
https://groups.drupal.org/node/507953
https://groups.drupal.org/node/515730

CPI

CPI は、Drupal を含む CMS ツールのインストーラを提供するレンタルサーバーとしても知られています。CPI サーバーに Drupal 8 をインストールする手順については、ANNAI マガジンでも紹介していますので、参考にしてください。 

https://annai.co.jp/article/d8-install-cpi

Drupal の動作が確認されているサーバーは他にも多数あります。基本的には、Apache、MySQL、PHP が使えれば動作しますが、バージョンの制約もあるので、Drupal の使用を目的にサーバーを選択する場合は注意が必要です。なお、Drupal の動作を標榜してインストール手順を掲載しているレンタルサーバーの中にも、想定している Drupal のバージョンが古いものや、某個人サイトを国内の公式サイトのように誤解して掲載しているものもあります。こうしたサーバーは前提としてしている情報が古かったり不正確な可能性があるので、Drupal 8 で使うのは避けた方が無難でしょう。

なお、本格的に Drupal 使う場合は Drush というコマンドライン ユーティリティの利用が欠かせません。Web サイトとしては動作しても、コマンドラインの PHP のバージョンが合わずに Drush が正常に動作しなかったり、それ以前に SSH が使えないケースもあるので、Drupal 前提で考える場合は、そうした点も考慮する必要があります。

今回紹介した3つの方法の特徴と前提スキルをまとめます。それぞれの状況に応じて、最適な方法を選択するための参考にしてください。

方法 特徴 前提スキル
汎用のクラウドサービス サーバーのインフラをアウトソースすることが目的なので、Drupalサイトの構築自体は自分で行う必要がある。

Drupalの導入スキル
各クラウドサービスの利用スキル

Drupal専用のサービス 稼働に必要なインフラ整備からDrupalサイトの導入・立上げまでが自動化される。 インストール済み Drupal サイトを扱うスキル。ただし、開発環境として使う場合は当然 Drupal 開発に関する知識全般が必要。
レンタルサーバー 共用サーバー上でサイトをホストすることでサーバーの運用管理をアウトソースすることが目的なので、Drupalサイトの構築自体は自分で行う必要がある。

Drupalの導入する
各レンタルサーバーの利用スキル

 

方法 メリット デメリット 前提スキル
汎用のクラウドサービス

全てを自分で管理できるため、システム構成を柔軟に変更が可能。

例えば、DrupalとWordpressを1つのクラウドサービスでホスティングするなど。

PHP、Apache、Mysqlなどのミドルウェアの設定とセキュリティ更新は自身で行う必要がある。

Drupalの導入スキル

各クラウドサービスの利用スキル

Drupal専用のサービス

PHP、Apache、Mysqlなどのミドルウェアの設定とセキュリティ更新が自動で行われる。

Drupalのインストールが自動で行われる。

Drupalのセキュリティ更新を自動的に通知してくれる (サービスによる)

各サービスに依存した設定がされるケースがあり、他のサービスへの移行が難しい場合がある。 インストール済み Drupal サイトを扱うスキル。ただし、開発環境として使う場合は当然 Drupal 開発に関する知識全般が必要。
レンタルサーバー

コストが安い

PHP、Apache、Mysqlなどのミドルウェアの設定とセキュリティ更新が自動で行われる? (厳粛にはちょっと自分で設定しますよね?)

日本語の情報が豊富

各レンタルサーバーの事情に合わせて.htaccessなどの設定を変更する必要がある。

ミドルウェアのバージョンが古く、正常に場合に動かないケースがある

Drupalの導入する

各レンタルサーバーの利用スキル

以上、前回と今回に分けて、Drupal をインストールして使えるようにするところまでの方法を紹介しました。次回からはいよいよ、Drupal が提供する個々の機能を取り上げていきたいと思います。

(Photo by rawpixel.com on Unsplash)

Drupal 8初心者講座バックナンバー