        ![What is Drupal 9 Laptop Graphic](/sites/default/files/styles/blog_hero_image_mobile/public/media/image/2022-04/what-is-drupal-9-graphic.png?itok=w6MZ2WiO) 

 

 

 Image

        ![](/sites/default/files/styles/post_content_attribution_headshot/public/legacy/images/2019-10/hikaru_4.jpg?itok=Rjs7mpHp) 

 

 

 

 [丸山 ひかる](/jp/about-us/team/hikaru-maruyama) テクニカルトランスレーター Acquia

 

 

 

## コレクション

 [Drupal](/index%2Ephp/jp/blog/series/drupal) 

 

 

 



# Docker+Landoで簡単、Drupalローカル環境の構築方法

 April 21, 2026 3 分で読めます

 [Share this blog post on LinkedIn

 ](https://www.linkedin.com/sharing/share-offsite/?url=https://www.acquia.com/index%2Ephp/jp/markdownify/node/34791) [Share this blog post on Twitter

 ](https://twitter.com/intent/tweet?text=Docker+Landoで簡単、Drupalローカル環境の構築方法&url=https://www.acquia.com/index%2Ephp/jp/markdownify/node/34791&via=acquia) [Share this blog post via Email

 ](mailto:?subject=Docker+Landoで簡単、Drupalローカル環境の構築方法&body=https://www.acquia.com/index%2Ephp/jp/markdownify/node/34791) 

 

 DrupalをDockerコンテナで簡単に起動できる「Lando」をご紹介します。 

        ![What is Drupal 9 Laptop Graphic](/sites/default/files/styles/blog_hero_image_mobile/public/media/image/2022-04/what-is-drupal-9-graphic.png?itok=w6MZ2WiO) 

 

 

## Collection :

 [Drupal](/index%2Ephp/jp/blog/series/drupal) 

 

## Landoとは

Drupalでは様々なローカル開発環境が利用されており、Landoもその一つです。Landoは、オープンソース製のクロスプラットフォームのローカル開発環境構築ツールです。Linux、Windows、MacOSで利用できるので、チーム内でマシンOSが異なる環境下でも利用できます。

Landoは、プロジェクト開発に必要な環境を**Docker上**に展開します。

特定の開発ユースケース（Drupal、Python、Laravelなど）を満たすサービスとツールの一般的な組み合わせをレシピから簡単にセットアップできます。これによって、dockerfileやdocker composeで**直接行うよりも簡単に**環境を立ち上げられます。

## LandoでDrupalローカル開発環境を立ち上げる

Landoを使用して、簡単にDrupal環境を作成する方法をご紹介します。Landoインストールが完了したところから解説をスタートします。Landoのインストール方法については公式ドキュメントをご確認ください。

**1. プロジェクトディレクトリの作成**

まずプロジェクトディレクトリを作成して移動しておきます。

```plaintext
$ mkdir my-d9app && cd my-d9app

```

**2. Landoの設定ファイルの作成**

LandoでDrupal環境を構築するにはLandoの設定ファイル(.lando.yml)が必要です。プロジェクトディレクトリ下でlando initコマンドを実行することで、対話的に設定内容を定義できます。

```plaintext
$ lando init

# コードベースの場所を聞かれているので、現在のワーキングディレクトリ(current working directory)を選択します。
? From where should we get your app's codebase? current working directory

# drupal9レシピを選択します。
? What recipe do you want to use? drupal9

# ドキュメントルートのディレクトリを指定します。
? Where is your webroot relative to the init destination? web

# 今回起動するLandoアプリケーションの名前を指定します。
? What do you want to call this app? my-drupal9-app

# ..省略..

NAME      my-drupal9-app
 LOCATION  /Users/hikarumaruyama/src/localonly/my-d9app
 RECIPE    drupal9
 DOCS      <https://docs.lando.dev/config/drupal9.html>

```

プロジェクトディレクトリ直下に .lando.yml ファイルが生成されました。

**3. アプリケーションの起動**

lando startコマンドでDockerコンテナを起動します。

```plaintext
$ lando start

# ..省略..

NAME            my-drupal9-app
 LOCATION        /Users/hikarumaruyama/src/localonly/my-d9app
 SERVICES        appserver, database
 APPSERVER URLS  <https://localhost:55611>
                 <http://localhost:55610>
                 <http://my-drupal9-app.lndo.site/>
                 <https://my-drupal9-app.lndo.site/>

```

アプリケーションサーバーとデータベースが起動しました。これでLando経由でComposerコマンドが使用できます。

**4. Drupalプロジェクトの作成**

Composerコマンドの頭にlandoを付けて、Drupalプロジェクトを作成するコマンドを実行します。

Composerは、ディレクトリが空でないとcreate-projectコマンドが実行できない仕様になっています。なのでtmpディレクトリに一時的に展開して、プロジェクトルートに移動する処置を取っています。

```plaintext
$ lando composer create-project drupal/recommended-project tmp && cp -r tmp/. . && rm -rf tmp

```

**5. Drupalの初期インストール**

あとは、Drupalの初期インストールを行えば終了です。Drupalの初期インストールを行う際、データベースの接続先情報は lando infoコマンドで確認できます。「drupal9」レシピの場合はデフォルトで次の内容になっているはずです。

- データベース名：drupal9
- ユーザー名：drupal9
- パスワード：drupal9
- ホスト名：database
- ポート番号：3306

## Landoの基本的な操作方法

- **lando stop：**コンテナを停止する。
- **lando rebuild：**コンテナを再構築する。.lando.ymlファイルを編集した際に、このコマンドを実行することでファイル内容をコンテナ環境に反映できる。
- **lando ssh：**コンテナのシェルにアクセスする。未指定の場合、デフォルトでアプリケーションサーバーにアクセスするが、-sオプションでサービス名を指定してアクセスできる。
- **lando drush：**コンテナのアプリケーションサーバー内でdrushコマンドを実行する。Composerでdrushをインストールした場合に使用できる。

## Landoの便利な設定 ①環境変数を追加する

Landoで起動した環境内で使用使用可能な環境変数を追加できます。

プロジェクトルート直下に、環境変数を羅列したファイルを用意します。仮にファイル名を .env としておきます。

```plaintext
DB_HOST=database
DB_NAME=drupal9
DB_USER=drupal9
DB_PASS=drupal9

```

.lando.ymlファイルのトップレベルに env\_file キーを追加して、環境変数を用意したファイルの名前を記述します。

```plaintext
name: my-drupal9-app
recipe: drupal9
config:
  webroot: web

# 環境変数をセットする
env_file:
  - .env

```

.lando.ymlファイルを編集した後は必ず lando rebuild コマンドで環境を再構築します。

参考：[Environment | Lando](https://docs.lando.dev/config/env.html)

## Landoの便利な設定 ②メールサーバーの追加

「drupal9」レシピでは、デフォルトでアプリケーションとデータベースを用意してくれます。メールサーバーは自分で.lando.ymlファイルに設定を記述すれば追加できます。

```plaintext
name: my-drupal9-app
recipe: drupal9
config:
  webroot: web

# メールサーバーをサービスとして追加
services:
 mailhog:
   type: mailhog
   hogfrom:
     - appserver

```

.lando.ymlファイルを編集した後は必ず lando rebuild コマンドで環境を再構築します。

lando info コマンドでメールサーバーのURLが確認できます。Drupalサイトで発生したメールをメールサーバーで閲覧できます。

Image

 ![drupal lando mailhog](/sites/default/files/styles/wysiwyg_full_no_crop_/public/media/image/2022-05/Screen%20Shot%200004-05-18%20at%209.26.04.png?itok=VyRAlS5f)

 



参考：[MailHog Plugin | Lando](https://docs.lando.dev/mailhog/)

## Landoの便利な設定 ③phpMyAdminの追加

メールサーバーの追加と同じ要領で行います。

```plaintext
name: my-drupal9-app
recipe: drupal9
config:
  webroot: web

# phpMyAdminをサービスとして追加
services:
  phpmyadmin:
    type: phpmyadmin

```

.lando.ymlファイルを編集した後は必ず lando rebuild コマンドで環境を再構築します。

参考：[phpMyAdmin Plugin | Lando](https://docs.lando.dev/phpmyadmin/)

## Landoの便利な設定 ④VS CodeでXdebugを使用する

プロジェクトルート直下に .vscode ディレクトリを作成し、launch.jsonとphp.iniの2つのファイルを作成します。

.vscode/launch.json

```plaintext
{
 "version": "0.2.0",
 "configurations": [
     {
     "name": "Listen for XDebug",
     "type": "php",
     "request": "launch",
     "port": 9003,
     "log": false,
     "pathMappings": {
         "/app/": "${workspaceFolder}/",
     }
   }
 ]
}

```

.vscode/php.ini

```plaintext
[PHP]

; Xdebug
xdebug.max_nesting_level = 256
xdebug.show_exception_trace = 0
xdebug.collect_params = 0
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.client_host = ${LANDO_HOST_IP}
; xdebug.log = /tmp/xdebug.log

; Remote settings
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_host = ${LANDO_HOST_IP}
; xdebug.remote_connect_back = 1
; xdebug.remote_log = /tmp/xdebug_remote.log

```

.lando.ymlファイルに次のように設定を追加して、lando rebuild コマンドを実行します。

```plaintext
name: my-drupal9-app
recipe: drupal9
config:
  webroot: web
  # VS CodeでXdebugを使用する設定
  xdebug: true
  config:
    php: .vscode/php.ini

```

これでVS CodeでXdebugを使用する準備が整いました。VS Codeに移動して、右メニューの虫マーク(Run and Debug)でデバッグ周りの制御が行えます。

Image

 ![drupal lando vscode xdebug](/sites/default/files/styles/wysiwyg_full_no_crop_/public/media/image/2022-05/Screen%20Shot%200004-05-18%20at%209.35.09.png?itok=SsB-tONw)

 



## まとめ 

Drupalローカル開発環境を簡単に構築できる「Lando」の基本的な操作方法から、便利な設定方法までご紹介しました。ぜひお試しください。



 

 Image

        ![](/sites/default/files/styles/post_content_attribution_headshot/public/legacy/images/2019-10/hikaru_4.jpg?itok=Rjs7mpHp) 

 

 

 

 [丸山 ひかる](/jp/about-us/team/hikaru-maruyama) テクニカルトランスレーター Acquia

 

 

 

 

 

 [Share this blog post on LinkedIn

 ](https://www.linkedin.com/sharing/share-offsite/?url=https://www.acquia.com/index%2Ephp/jp/markdownify/node/34791) [Share this blog post on Twitter

 ](https://twitter.com/intent/tweet?text=Docker+Landoで簡単、Drupalローカル環境の構築方法&url=https://www.acquia.com/index%2Ephp/jp/markdownify/node/34791&via=acquia) [Share this blog post via Email

 ](mailto:?subject=Docker+Landoで簡単、Drupalローカル環境の構築方法&body=https://www.acquia.com/index%2Ephp/jp/markdownify/node/34791) 

 

 

 

## 関連記事

 [全て表示する](/index%2Ephp/jp/resources) 

  [Image

        ![Navy and blue gradient graphics and textures with a Drupal 9 logo](/sites/default/files/styles/card_tablet/public/media/image/2022-03/Flight%20Path%20Landing%20Page%20Header_0.jpg?h=1ccb775e&itok=Nr665_BO) 

 

 

 

 Blog Article 1 分 

######  4ステップで理解するDrupal学習の道のり

 ステップに応じてDrupal 9を学習するために参考になるコンテンツをまとめてみました。 

  

 

 ](/jp/blog/4-steps-get-ready-drupal-for-beginners)



  [Image

        ![Security Event Monitoring](/sites/default/files/styles/card_tablet/public/media/image/2021-01/security-event-monitoring.jpg?h=5c02d21d&itok=X7QwQOpk) 

 

 

 

 Blog Article 1 分 

######  DrupalアプリケーションのモニタリングにNew Relicを活用しよう

 New RelicでDrupalアプリケーションをモニタリングする際に便利な機能や設定内容をご紹介します。 

  

 Drupal 

 ](/jp/blog/getting-started-drupal-monitoring-using-newrelic)



  [Image

        ![See Drupal in action monitor graphic](/sites/default/files/styles/card_tablet/public/media/image/2022-08/see-drupal-cloud-in-action-graphic.png?h=1e66e246&itok=5iGNf3Ny) 

 

 

 

 ウェビナー November 18, 2022

  

######  【オンラインハンズオン】Docker+LandoでCMS環境を構築してみよう

 オープンソースCMS「Drupal」を例に、LandoとDockerを使用してローカル開発環境を構築する手順をご紹介します。 

  

 

 ](/index%2Ephp/jp/events/webinars/drupal-handson-q42022)