Umi Blog
ウミブログ
Drupal8では公式サイトからzip形式で取得できるDrupal一式の他にcomposerを利用したエンジニア向けの環境構築方法があります。
今回はcomposerを利用した環境構築の手順をご紹介したいと思います。
composer とはPHPにおけるパッケージ管理システムです。
composerを利用することによってcomposer.jsonによるパッケージ管理を行い、各人や環境で利用するパッケージを共通化することが出来ます
今回ご紹介する drupal-composer/drupal-project を利用して構築する場合の メリット・デメリットは以下のようなものがあります。
composer update で一括して行うことが可能)web となる為、余計なファイル(README等の公開には不要なファイル)をWEB上に公開しない為、セキュアになるweb となる為、WEBサーバ(apache, nginx等のミドルウェア)の設定変更が必要となるそれでは、環境構築手順をご説明します。
以下のコマンド1つでDrupalを動かすために必要なライブラリ等が一式取得できます
[サイトディレクトリ名] には任意の名前を入力してください。
composer create-project drupal-composer/drupal-project:8.x-dev [サイトディレクトリ名] --stability dev --no-interaction
コマンドが正常終了すると、以下のように各種ディレクトリやファイルが作成されます。
.
├── LICENSE
├── README.md
├── composer.json
├── composer.lock
├── drush
├── load.environment.php
├── phpunit.xml.dist
├── scripts
├── vendor
└── web
http://localhost 等公開したURLへアクセスするとzip形式でダウンロードした場合と同様にインストール画面が開きます。
デフォルトでは最新のDrupal8が取得されます。何らかの理由によりバージョンを変更したい場合、以下のコマンドで変更することが可能です
# 例:8.6.1に変更する場合 ※8.6.1を任意のバージョンに変更してください
composer require drupal/core:8.6.1 webflo/drupal-core-require-dev:8.6.1
コントリビュートモジュールは以下のコマンドで入手することが可能です
# 例:webformを導入する場合
# コントリビュートモジュールのダウンロード
composer require drupal/webform
# コントリビュートモジュールの有効化
drush en -y webform
composerを利用している場合、 composer update で基本的にはバージョンアップ可能ですが、状況に応じて必要なコマンドを入力します
# 例:すべてのパッケージをアップデートする
composer update
# 例:特定のモジュールのみをアップデートする
composer update drupal/webform --with-dependencies
# 例:コアのみをアップデートする
composer update drupal/core webflo/drupal-core-require-dev symfony/* --with-dependencies
言葉での説明ばかりになってしまいましたが、drupal-composer/drupal-projectを利用した環境構築のご紹介でした
皆様も良ければ上記の方法を利用して環境構築をお試しください

Masters of Drupal Engineering.
人に、