Drupal8を体験しよう Drupal8 & Docker

Preview:

Citation preview

Drupal8 を体験しよう

©sphism

紀野惠 Satoshi.kino ANNAI

自己紹介•紀野惠( Kino Satoshi )

satoshi.kino

•ANNAI

•Drupal Community

•DrupalCafe

Drupal8 はいつから?

Drupal8 はいつから?2015 9 月 24日 

Drupal8 はいつから?

予想!!

Drupal8 でなにが変わる?• 完全モバイル対応• 標準でマルチリンガル• GUI 設定のファイル書き出し• WAI-ARIA アクセシビリティ• コアでの RestAPI 対応• シームレスな編集画面• テンプレートエンジン Twig 採用• SQL ビルダー  Views in Core

• Entity API のコア化• HTML5

• PSR-4 モダン PHP

私の推しはコレ!•Configuration Management

•管理画面からの設定項目が逐一ファイルに YAML で書き出される•GUI 開発の過程がバージョニング可能!•複数人での開発、継続的開発が圧倒的に楽になる!

私の推しはコレ!•ネイティブなマルチリンガル対応•CMS のマルチリンガルはコンテンツだけでは済みません。•メニュー、ブロック、カテゴリー、フィールド、ラベル

etc.....

•とんでもなく多言語サイト作成が楽になります!

私の推しはコレ!•Views in Core

•Drupal のキラーモジュール Views がとうとうコアに•拡張モジュールがどんどんでてくる

私の推しはコレ!•コアでの Restful API 対応•Drupal は以前から RestAPI 対応できていましたが、コアでの対応で安定度と仕様の共通化で拡張モジュールの充実が期待できます

私の推しはコレ!• フレームワークにSymfony2 採用• HTTP Foundation

• Routing

• Controller

• HTTP Kernel

• Dependency InjectionYaml

• Twig

• Composer

• Validator

• Namespaces and Autoloading

コアだけでほぼ大丈夫•メジャーバージョンでの大きなジャンプが Drupal の特徴•重要モジュールが出揃うのを待つことも。。。•今回はすぐ使えます!

インストール要件•注意点は PHP のバージョンのみ•PHP 5.5.9

•つまり•Ubuntu 14.04 以降  Debian Jessie 以降•RHEL 7 ( CentOS 7) 以降

ローカルで試すには•MAMP ( windows 版も)

https://www.mamp.info/en/downloads/

•Vagrant + Virtual boxhttps://github.com/thom8/drupal8-vagrant

•Docker Toolboxhttps://www.docker.com/toolbox

Docker 行っときましょう•Virtualbox+Vagrant よりサクサク•そのまま本番に持っていける•複数環境立ちあげも余裕

おすすめ D8 リポジトリ 1

•Docker オフィシャルリポジトリ•https://hub.docker.com/_/drupal/

•Apache, MySQL を分離したベストプラクティス

手順 1-1• Docker Toolbox のインストール• https://www.docker.com/toolbox

• Virtualbox の起動• Docker Quickstart Terminal の起動• Virtualbox に Docker Machine が立ち上がる

手順 1-2

• $ docker pull drupal:8$ docker run -p 8080:80 -d drupal:8

• IP を調べてブラウザでアクセス$ docker-machine ip default

• SQLite を選べばこれだけで立ち上がる

手順 1-3•MySQL の場合  MySQL のコンテナを追加

$ docker run -d --name db \ -e MYSQL_ROOT_PASSWORD=pass \ -e MYSQL_DATABASE=drupaldb \ -e MYSQL_USER=drupal \-e MYSQL_PASSWORD=pass \ mysql

•$ docker run -d --link db:mysql -p 8081:80 drupal:8//MySQL コンテナに Drupal コンテナをリンクさせる

手順 1-4

•mysql の DB をコンテナを終了したあとも保持したい場合は、-v /Users/{username}/docker/mysql:/var/lib/mysql

をオプションにつける•コードなどの追加をしたい場合は、

$ docker exec -i -t {drupal コンテナの ID [*3]} bash

おすすめ D8 リポジトリ 2• thom8/drupal8-docker

•https://github.com/thom8/drupal8-docker/blob/master/Dockerfile

•開発環境全部入りリポジトリ•Drush, Drupal console, MySQL 導入済み•Vagrant でも評判の良いリポジトリ

手順 2-1

• Docker Toolbox のインストール• https://www.docker.com/toolbox

• Virtualbox の起動• Docker Quickstart Terminal の起動• Virtualbox に Docker Machine が立ち上がる

手順 2-2• Docker file ダウンロード

$ git clone https://github.com/thom8/drupal8-docker.git

• ディレクトリに移動$ cd drupal8-docker

• ビルド$ docker build -t hoge/drupal8 .

• Docker コンテナを起動 8080 ポートとコンテナの 80 をマッピング $ docker run -d -p 8080:80 hoge/drupal8

• $ docker-machine ip default // IP 確認• ブラウザでアクセス

注意点•Virtualbox のポートフォワーディングで host IP

127 . 0 . 0 . 1 をゲストの 80 に設定すること

Enjoy Drupal8 !!

Enjoy Drupal8 !!•コミュニティはこちら•groups.drupal.org/japan

• facebook.com/DrupalCafe

Recommended