オープンソースCMS Drupalの紹介 株式会社メノックス Druapl事業部 井村 邦博 2016年10月24日 自己紹介 名前:井村邦博 会社:株式会社メノックス (豆蔵ホールディングスグループ) 所属:Drupal事業部 経歴:28年間、IT業界で技術者として従事 さくらインターネット公式ブログ 「さくらのナレッジ」でDrupalの記事を連載中。 2 株式会社メノックスの紹介 会社:株式会社メノックス(豆蔵ホールディングスグループ) 設立:1983年12月 従業員数:約150名 事業内容: Android技術、クラウド技術の強みを活かしたシステム開発 技術支援サービス Drupalを利用したWebシステムのソリューション 3 Drupalとは 4 Drupalとは Drupalは、ベルギー人のDriesが開発したオープンソフト ウェアのCMS(コンテンツ・マネジメント・システム)です。 PHP言語で記述され、各種データ格納にはデータベースを利 用しています。(MySQL, PostgreSQL, SQLite, MongoDBなど) 現在、2015年11月にリリースされたDrupal 8が最新バージョ ンとなります。 5 Drupalの特徴 1. 高いセキュリティ、高いパフォーマンス 2. 多機能によるマルチサイト基盤 3. コミニティ活動が活発 6 Drupalの特徴1 ❖ 高いセキュリティ、高いパフォーマンス ❖ ホワイトハウスのサイトを初め、NASAで利用されていま す。 ❖ ドイツ共和国・フランス共和国の公式サイト、ポーランド 内閣府で利用されています。 ❖ オーストラリア政府では、2014年に電子政府対応として政 府機関のサイトはすべてDrupalで進める方針を打ち出しま した。 7 Drupalの特徴1 ❖ 2016年10月 NasdaqがDrupal 8を採用 8 Drupalの特徴2 ❖ 多機能によるマルチサイト基盤 ❖ 10,000を超える追加モジュール(基本機能の拡張から、部屋予約するための 業務機能まで)を利用して、コーポレートサイト、ポータルサイト、eコ マースサイト、キャンペーンサイトなど、さまざまサイトに利用できます。 ❖ 多言語対応、マルチサイトにも対応しています。 ❖ ディストリビューションという形で特定サイト向けのテンプレートを作成し てデリバリーできます。 ❖ グローバル企業のJonson & Jonsonでは、約7,000サイトをDrupalで運用。 Pfizer製薬では、約1,000サイトを運用しています。 9 Drupalの特徴3 ❖ コミニティ活動が活発 ❖ 230の国、181言語で利用されています。 ❖ オープンソースを支える多数の開発者がいます。 ❖ ❖ 基本機能(core)の開発者だけで2000人以上 年2回、アメリカとヨーロッパでカンファレンス開催。アメリカでは3000人以 上が参加します。 ❖ 運営母体としてDrupal Associationの存在 ❖ 年間約450万ドルの収入があり、Drupalの普及や技術者の育成に使われてい る 10 CMSのリーダ 2016年9月のGartner によるCMSランキ ングでは、唯一オー プンソフトウェアで リーダーとして位置 づけられています。 Acquiaは、Driesが CTOを勤める米国 企業です。 11 DrupalはCMS? Drupalは、Webページ作成するCMSという枠を超え た、多数の機能を実現する仕組みがあり、業務シス テム構築のWebシステムフレームワークと言えます。 例えるなら、Ruby On Railsのようなイメージです。 しかも、Drupalは、すでに多数あるモジュールを組 み合わせることで、プログラミングなしで構築が可能 です。 12 日本の状況 ❖ 日本語情報が少なく、「知っている人が少ない」 ❖ Drupalの洋書は数百冊あるが、日本語の書籍は1,2冊(しかも古い) ❖ 2016.6 NTTデータ先端技術株式会社がDrupalの日本語翻訳サイトを立 ち上げ ❖ ❖ 日本での大規模サイトの事例 ❖ 国立国会図書館による東日本大震災データベース「ひなぎく」のサイト ❖ 毎日新聞社の毎日.jpのサイト 日本政府では2015年にCIOポータル(IT総合戦略室)のサイトを公開 13 Drupalのシステム 14 Drupalの構造 ❖ Drupalは、Coreとモジュールが完全に分離(Coreを ハックするな!) ❖ Coreは小さく、機能を実現するにはモジュールを利用 テーマ ノード ブロック メニュー タクソノ ミー 組み込み モジュール Drupalシステム関数、Hook関数 Drupal Core (基本コンテンツ機能、ユーザ管理、セッション管理、URL、 ローカライズ、ログ、テンプレート、データベース) 15 各機能 モジュール RDBMSとDrupalの機能比較 Drupal RDBMS Drupalサイト データベース マルチサイト対応も可能 コンテンツタイプ テーブル(表) 自由な項目定義 ノード レコード(データ) ノードにはユニークなIDが付与 表結合 リレーションモジュールで対応 マスタデータ タクソノミー SQLの問い合わせ(select) Viewsモジュールで対応 16 Drupalサイト ❖ 1サイトは、Drupalシステムと1つのデータベースに対 応 ❖ 複数サイトを構築する場合は、Drupalシステム1に対し て、複数のデータベースに対応させたマルチサイト構成 も可能 ❖ DrupalシステムN個でデータベースは1という対応も可 能(Webリクエストの分散対応) 17 コンテンツタイプ ❖ リレーショナルデータベースのテーブル(表) ❖ 複数のテーブルの登録が可能 ❖ 自由な項目定義が可能 ❖ 追加モジュールをインストールすることでコンテンツタ イプ間でのリレーション対応も可能 ❖ モジュールを開発することで、独自のテーブルを作成し 業務モジュールのような開発も可能 18 フィールド管理 ❖ 自由なフィールド定義 ❖ モジュールを追加することで新しいフィールドの型を追加 ❖ ❖ 例えば、日付型、URL型、YouTube型… フィールド単位に多言語が可能(URLは多言語不要、テキストは多 言語化) ❖ コンテンツタイプ間でフィールドを共通化可能 ❖ コンテンツマネジメントシステムではなく、フィールドベースマネ ジメントシステムとも言えます。 19 タクソノミー ❖ 統一した語彙を登録して管理する機能(表示順番も指定 可能) ❖ タクソノミーは階層化が可能 ❖ 引用した語彙でまとめて集計することが容易 ❖ タクソノミー自体も自由にフィールドを追加することが 可能 20 タクソノミーの例 ❖ ❖ iOS ← スマートフォンのOSでの分類 ❖ iPhone 6 ← 機種毎の分類 ❖ iPhone 6s ❖ iPhone SE Android ❖ ❖ Galaxy ← 会社毎の分類 ❖ Note ❖ S7 Xperia ❖ X 21 ブロック ❖ 表示領域を複数の「ブロック」によ る、ブロックにコンテンツを配置し ます ヘッダ メニュー ❖ ❖ ブロックは、ヘッダ・フッタ・メ ニュー・左サイドバー、コンテンツ 表示領域、右サイドバー、バナー表 示など 表示するページによりブロックの表 示・非表示、表示する内容の変更が 可能(コンテンツの再利用が容易) 左サ イド バー コンテンツ バナー フッタ 22 右サ イド バー Drupalの運用 23 アップデート ❖ Coreのアップデートは2,3ヶ月に1回のペースでリ リースされている ❖ Coreの脆弱性は発表と同時にリリースされます ❖ 半年ごとに新規機能が追加されたマイナーバージョンアッ プが実施されます 24 運用ツール ❖ drushというコマンドラインからDrupalを操作できるコ マンドラインツールがあります ❖ 事前に手順が作れ、ミスや漏れが少なく操作ができます ❖ ブラウザの画面から管理画面を操作するのではなく、ほ とんどのコマンドが利用可能 ❖ 例 システムバックアップ、データベースバックアップ、モジュールのイ ンストール、メンテナンスモードの移行、キャッシュのクリア、ノード 間での同期などなど 25 Drushでのアップデート作業の例 #バックアップ (Drupalシステム、データベース) drush archive-dump drush sql-dump --result-file=$HOME/backup/dump.sql #メンテナンスモードをON (サイトがメンテナンス中と表示される) drush vset maintenance_mode 1 --yes #アップデート (通常、1、2分) drush up ( —security-only) #メンテナンスモードをOFF drush vset maintenance_mode 0 --yes 26 Drupalの今後 27 ヘッドレスCMS ❖ デカップルド・アーキテクチャを採用して、バックエン ドにDrupalを利用 ❖ Drupalのテーマで対応しているHTML+CSS(ヘッド)を 使わず、コンテンツ管理に特化して、APIによるコンテ ンツ配信(ヘッドレスCMSと呼ばれる) ❖ マルチデバイス対応、IoTなどに利用 28 今後のイベント予定 ❖ 日本でのイベント ❖ 2017年1月14日 Drupal Camp in Japan (東京開催) ❖ 2017年2月 ビジネス向けのイベント企画中 29
© Copyright 2024 Paperzz