ANNAIマガジン
DDEV and Lando logos
この記事の目次

サーバーやローカル環境を設定せずとも手っ取り早く Drupal を試す方法はありますが、サイトを構築したり、モジュールやテーマを開発する場合にはローカル開発環境の構築は欠かせません。幸い仮想化技術の進歩とその活用により、開発環境の構築はとても手軽に出来るようになりました。

Dupral 9/10 向けローカル開発環境構築ツール

2023 年現在、ローカルで Drupal の開発環境を構築する場合は Docker を使った仮想環境を利用するのが主流になっています。この記事では、ローカル開発環境の構築を容易にする以下の 2 つのツールを紹介します:

いずれのツールもオープンソースです。また Docker の知識がない人でも比較的簡単に導入・利用することができます。

以前、ローカル開発環境の構築の際はウェブサーバーやデータベースをローカルに直接インストールする WAMP/MAMP などが使われていました。しかし、ホストマシンの特定の条件でのみ特殊な問題が発生したり、OS のアップグレートに伴って動作しなくなるなど、WAMP/MAMP を使ったアプローチは、チームで統一した開発環境を整える上で様々な障害をもたらすことがありました。Docker はそのようなマシンごとの問題が生じる可能性が比較的少ないこと、また 1 つのマシン上に異なる構成の環境や、複数の環境を容易に設置することができるため、人気が高まっていると考えられます。Vagrant と VirtualBox をベースに作られた DrupalVM は一時期ポピュラーでしたが、Docker 利用の流れには抗えなかったようで、2023 年に入ってリポジトリがアーカイブされました。

留意点

いずれのツールを利用する場合でも Docker は必須です。Docker Desktop をインストールすることで簡単に Docker を導入できますが、Docker のみインストールすることも可能です
Windows を利用している場合、WSL2 をインストールしてください
Drupal をコマンドラインで扱う drush  というツールを利用します。サイトのインストールからキャッシュのクリア、設定のインポート・エクスポートなど、開発に必須のツールです。コマンド一覧は Drush の公式ドキュメンテーションで確認できます

DDEV

ドキュメンテーション:https://ddev.readthedocs.io/en/stable/
DDEV は、PHP 実行・開発環境を手軽に設置できるツールです。Drupal に特化しているわけではなく、Laravel アプリケーションや WordPress の実行・開発などにも利用できます。

DDEV のインストール

まずはシステム要件に照らし合わせて、利用しているマシンや環境が要件を満たしていることを確認してください。DDEV のインストール手順はこちらの公式ドキュメンテーションを参照してください。OS や環境により手順が大きく異なるため、ご自分の環境・好みにあった方法を選んで下さい。

Drupal を DDEV 上にインストール

DDEV への Drupal のインストール手順を説明します。以下の例は、公式ドキュメンテーションに解説と多少の変更を加えたものです:

# ディレクトリーの作成と移動
mkdir my-drupal10-site
cd my-drupal10-site

# DDEV の設定ファイルを作成。利用する Drupal バージョンを 10 に、また docroot を web に指定
ddev config --project-type=drupal10 --docroot=web --create-docroot

# DDEV の起動
ddev start

# DDEV 上で drupal/recommended-project を取得し、Drupal 10 に必要なパッケージをダウンロード
ddev composer create drupal/recommended-project

# drush のダウンロード
ddev composer require drush/drush

# drush を使って Drupal をインストール。ID/pass を `admin` に、またサイトのデフォルト言語を日本語に指定
ddev drush site:install --account-name=admin --account-pass=admin --locale=ja -y

#サイトへのログインリンクを生成
ddev drush uli

# デフォルトブラウザーでローカルの Drupal 10 サイトを開く
ddev launch

Lando

Lando は、Drupal のホスティングを提供する Amazee.io、Pantheon、Platform.sh がスポンサーとなり提供されている開発環境です。DDEV のように簡単にローカル開発環境を構築できるだけではなく、これらの会社の提供するホスティングサービスと統合することで、例えばローカル環境でリモートのステージング環境を再現するなどの作業が簡単に行えます。

Lando のインストール

まずはシステム要件に照らし合わせて、利用しているマシンや環境が要件を満たしていることを確認してください。同じページの下のほうに、各 OS ごとのインストラクションがあるので、それに従って Lando をローカルにインストールしてください。

Drupal を Lando 上にインストール

公式ドキュメンテーションには Drupal の最新バージョンの tar アーカイブを取得してセットアップする手続きが記されています。上の DDEV のように Composer を利用した手続きとは多少異なる点に留意してください。以下の例では、公式ドキュメンテーションの内容を多少変更して、Drupal 10 サイトのデフォルト言語を日本語に指定しています。

# ディレクトリーの作成と移動
mkdir drupal10 && cd drupal10

# Drupal 10 をもとに Lando を初期化
lando init \
  --source remote \
  --remote-url https://www.drupal.org/download-latest/tar.gz \
  --remote-options="--strip-components 1" \
  --recipe drupal10 \
  --webroot . \
  --name hello-drupal10

# Lando を起動
lando start

このコマンドが完了すると、サイトの URL が表示されるので、それをブラウザーで開くとインストール画面にアクセスすることができます。

また、コマンドラインから Drupal をインストールしたい場合、以下のコマンドを実行してください

# Drush をインストール
lando composer require drush/drush

# Drupal をインストール
lando drush site:install --db-url=mysql://drupal10:drupal10@database/drupal10 --locale=ja -y

# Drush で管理者としてログイン
lando drush uli -l https://hello-drupal9.lndo.site
tar アーカイブではなく、DDEV と同じように drupal/recommended-project を使う場合は以下の方法で行って下さい

# ディレクトリーの作成と移動
lando composer create-project drupal/recommended-project drupal10

# Lando を初期化
lando init

# 質問に対して、解答を選択
? From where should we get your app's codebase? current working directory
? What recipe do you want to use? drupal10
? Where is your webroot relative to the init destination? web
? What do you want to call this app? {プロジェクト名を入力}

# Lando を起動
lando start 

さいごに

この記事では、DDEV と Lando を使ったローカル開発環境の構築について説明しました。両者とも Drupal 以外のアプリケーション開発にも利用できますが、Lando は いくつかの Drupal ホスティングサービスと連携しているため、それらを利用している場合は DDEV よりも Lando のほうが利便性が高いでしょう。

両者とも xdebug をサポートしており、DDEV の場合はコマンドラインからLando の場合は設定ファイルから xdebug を有効化することが可能です。
 

ローカルで動かせるようになった Drupal で、色々な機能を試してみましょう。どこから始めたら良いか分からないという方は「Drupal 初心者講座」も併せてご利用ください。

 
フッターの採用情報
 
ANNAI株式会社の写真

この記事を書いた人: ANNAI株式会社

ANNAIは、2009年からDrupal専門のWebシステム開発会社として、世界規模で展開するグローバル企業や大学・自治体を中心に数多くのWebソリューションを提供。
CoreやModuleのコントリビューターなど、Drupalエキスパートが多数在籍。国内ユーザーコミュニティへも積極的にコミットし、定期的なセミナーの等の開催を通じて、オープンソース技術の普及や海外コミュニティとの緊密な連携を図っている。
Webシステムの企画・開発〜デザイン、クラウド運用までをワンストップで提供する他、Drupalのコーディングを評価する"Audit業務"や最適なモジュールの調査・選定等、幅広いコンサルティングを行っている。Drupalアソシエーション公式パートナー。

関連コンテンツ