ローカルにMovable Typeの開発環境を構築する方法

Posted on
ローカルにMovable Typeの開発環境を構築する方法

MTの開発環境をローカルに構築するのは非エンジニアにはハードルが高くなかなか手を出せずにいたのですが、MTの開発元であるsix apartから簡単に開発環境を作れるmt-devというものが公開されていたので試してみました。

MTの開発環境を簡単に作れる mt-dev を公開しました
 ・GitHub
 ・ドキュメント

VagrantとDockerの環境で利用できるようですが、自分の場合は既にVagrantとVirtualBoxをインストールしていたのでVagrant環境で進めることにしました。
それぞれのインストール方法については割愛しますので他のサイトを参考にしてください。

手順

まずはGiuHubのリポジトリからmt-devをクローンします。
また、インストールするMT自体が必要なためsix apartから個人無償版のMTをダウンロードしておきます。
この記事を作成している時点ではMT7のバージョンはR4706となっていました。

まずはダウンロードしたMTのzipファイルをクローンしてきたmt-dev > archiveフォルダの中に入れ、コマンドプロンプトを起動してmt-devフォルダに移動します。

コマンドプロンプトでディレクトリを移動するにはcdと入力したあとに半角スペースを開けてエクスプローラーのmt-devフォルダをコマンドプロンプトにドラッグアンドドロップしてEnterキーを押せばOKです。

mt-devフォルダに移動したら以下を実行します。

vagrant mt-dev up ARCHIVE=MT7-R4706.zip

※ARCHIVE=MT7-R4706.zipのところはダウンロードしたMTのバージョンに合わせて変更してください。

初回は5分程度時間がかかると思いますが「Succeeded!」の表示が出れば成功です。

次に以下を実行してデータベースを作成します。

vagrant mt-dev exec-mysql SQL='CREATE DATABASE mt /*!40100 DEFAULT CHARACTER SET utf8mb4 */'

こちらも実行後、「Succeeded!」と表示が出れば成功です。

http://192.168.7.25/cgi-bin/mt/mt.cgi にアクセスするとインストール画面が表示されるのでユーザー名やパスワードを設定すると開発環境の完成です。

プラグインの追加について

開発していく中でプラグインを使用することがあると思いますが、mt-devでは通常の環境とはプラグインの追加方法が異なります。

MTを使用するうえでもはや必需品?となっているくらいお世話になっている「QuickRebuild」という複数のサイトをまとめて再構築できるプラグインを例に説明します。

通常の場合

通常の場合、プラグインのzipファイル解凍すると以下のようにmt-staticとpluginsフォルダがあり、その中にプラグインのフォルダ(ここでは「QuickRebuild」フォルダ)が入っています。

QuickRebuild-0.7.5
 L mt-static
  L plugins
   L QuickRebuild
 L plugins
  L QuickRebuild

この階層構造に合わせて、MTがインストールされている環境のmt-staticとpluginsの中にそれぞれプラグインのフォルダを追加することでプラグインを使用することができるのですがmt-devでは異なります。

mt-devの場合

mt-devの場合は「mt-dev」の直下にある「repo」フォルダの中にプラグインを保存します。
ただし、通常のようにpluginsの中身ではなくpluginsを含んだフォルダを「repo」に保存しないとプラグインを認識してくれません。
具体的には以下のような構造になります。

mt-dev
 L repo
  L QuickRebuild-0.7.5
   L mt-static
    L plugins
     L QuickRebuild
   L plugins
    L QuickRebuild

上記のように「repo」フィルダにプラグインを保存したらコマンドプロンプトでmt-devに移動後、以下を実行してプラグインを追加します。

vagrant mt-dev up ARCHIVE=MT7-R4706.zip REPO=QuickRebuild-0.7.5

※ARCHIVE=のあとはダウンロードしたMTのバージョンに合わせて変更してください。
※REPO=のあとは「repo」フォルダに追加したフォルダ名を指定してください。

こちらも実行後、「Succeeded!」と表示が出れば成功ですのでMTの管理画面からプラグインが追加されていることを確認してください。

PageButeなどプラグインによっては解凍してできたフォルダの直下にプラグインファイルが入っているものがありますがそのまま追加しようとするとエラーになってしまいますので以下のように「plugins」フォルダを追加することでインストールできるようになります。

NG

mt-dev
 L repo
  L PageBute
   L PageBute.pl

OK

mt-dev
 L repo
  L PageBute
   L plugins ←追加する
    L PageBute.pl

複数のプラグインをまとめて追加する方法

また、以下のようにカンマ区切りでプラグイン名を指定することで複数のプラグインをまとめてインストールすることが可能です。

vagrant mt-dev up ARCHIVE=MT7-R4706.zip REPO=プラグイン1,プラグイン2,プラグイン3

※ARCHIVE=のあとはダウンロードしたMTのバージョンに合わせて変更してください。

これでプラグインを使用した開発が可能になりますので思う存分MTをいじくり倒しましょう。

MTを一時停止/復帰するには

一時停止するときはmt-devに移動後、以下を実行してVagrantを一時停止します。

vagrant suspend

ローカル環境のMTを一時停止から復帰するにはmt-devに移動後、以下を実行します。

vagrant resume

MTを終了/再起動するには

終了するときはmt-devに移動後、以下を実行してVagrantを終了します。

vagrant halt

ローカル環境のMTを再起動するにはmt-devに移動後、以下を実行します。
一度Vagrantを終了するとプラグインを再度追加する必要があるので忘れず追加してください。

vagrant mt-dev up ARCHIVE=MT7-R4706.zip
vagrant mt-dev up ARCHIVE=MT7-R4706.zip REPO=プラグイン1,プラグイン2,プラグイン3

※ARCHIVE=のあとはダウンロードしたMTのバージョンに合わせて変更してください。
※REPO=のあとは「repo」フォルダに追加したフォルダ名を指定してください。

以上、ローカルにMovable Typeの開発環境を構築する方法でした。

Vagrantが利用できる環境であれば簡単に開発環境を用意することができるので、ちょっとした検証がしたいときなどは便利なのではないかと思います。

おしまい。