これからDrupalを触り始めるという方や既にDrupal開発をされている方向けに徐々に流行しているLandoという開発ツールを利用した環境構築をご説明しようと思います。
Lando とは?
Lando とは Drupal に限らず、様々な開発環境をDocker上に展開するツールです。
.lando.yml
ファイルに簡単な定義を書くだけで環境構築ができ学習コストが低い為、本来の開発に集中することができます。
Lando のインストール
https://docs.lando.dev/basics/installation.html を参照しインストールしましょう。
macOSの方は dmg ファイル、windowsの方は exe ファイルを実行するだけでインストールできます。
(その際にdocker等必要なツールも自動的にインストールされます。)
drupal-composer/drupal-project とは
以前 drupal-composer/drupal-project で始めるDrupal初期構築 でご紹介していますのでそちらをご参照ください。
Drupal公式は drupal/recommended-project を推奨していますが、以下の点でメリットがある為、私は drupal-project を利用しています。
- 環境変数を
.env
ファイルに定義でき、秘匿情報を隠すことができる - drush が予めインストールされており、定義ファイルの設定場所等も決められている
- composer-patches が導入されており、パッチが必要な際に簡単に当てることができる
- drupal-paranoia を導入するとよりセキュアな環境構築ができる
環境構築
今回は studioumi/drupal-project を利用し最低限のコマンドで立ち上がる環境を構築します。
該当パッケージは以下の機能を含んでいます。
drupal-composer/drupal-project
+drupal-composer/drupal-paranoia
Lando
(drupal8(apache(php7.3)) + MySQL(5.7) + phpMyAdmin + mailhog)
ベースプロジェクトの作成
以下コマンドで studioumi/drupal-project
を任意のディレクトリへ展開します。
composer create-project studioumi/drupal-project:8.x-dev d8 --no-install --no-interaction
Drupalの環境立ち上げ
以下のコマンドでDrupal8用のLando環境を起動します。
cd d8
lando start
Drupalへのアクセス
Lando環境が立ち上がると以下のようにアクセス用のURLが表示されます。
Your app has started up correctly.
Here are some vitals:
NAME d8
LOCATION /Users/foobarbaz/Desktop/d8
SERVICES appserver, database, phpmyadmin, mailhog
APPSERVER URLS https://localhost:32835
http://localhost:32836
http://d8.lndo.site/
https://d8.lndo.site/
PHPMYADMIN URLS http://localhost:32833
http://pma.lndo.site/
MAILHOG URLS http://localhost:32832
http://mailhog.lndo.site/
表示されたURL( ex: http://d8.lndo.site/ )へブラウザでアクセスするとDrupalの初期インストール画面が表示されます。
DBのアクセス情報は lando info
と打つと情報が出ますのでそれを記載してください。
以降は通常のDrupalインストール時の流れになりますので省略します。
環境の終了
利用しなくなった環境は以下のコマンドで停止(破壊)できます。
# 停止する場合(データは残る)
lando stop
# 破壊する場合(データは削除される)
lando destroy
上記のようにLandoを利用すると面倒なミドルウェア構築を簡単に済ませることが出来ます。
また、drupal-projectでcomposerによるDrupal開発も効率的に実施することが可能となります。
皆さまもぜひお試しください!
募集しています
スタジオ・ウミは「Drupal」に特化したサービスを提供する Drupal のエキスパートチーム。
フルリモート&フレックス制だから、働く場所を選ばず時間の使い方も自由です。
そんなワークライフバランスの整った環境で、当ブログに書かれているような
様々な技術を共に学びながら、Drupalサイト開発に携わってみたい方を募集しています。
まずはお話だけでも大歓迎!ぜひお気軽にご連絡ください。