MacのDocker環境でmt-devを構築する
概要
Dockerを利用し、mt-devでMovable Type(以下MT)のローカル環境を構築する手順について解説しています。
筆者の環境はM3チップのMacですが、Dockerを利用するのでIntelチップのMacや多少古いOS、Windowsでも同じように構築できるかと思います。
mt-devの詳細については、以下リポジトリのReadMeもご参考ください(リンクは日本語のReadMe)
構築環境について
- MacBook Air(M3チップ)
- macOS Sequoia 15.5
- Git 2.48.1(Homebrewで入れているけど、Macに標準でインストールされているものでもOK)
- make 3.81(Macに標準でインストールされているもの)
- Perl v5.34.1(同上)
- Docker Desktop 4.43.1 (198352)
MT本体ファイルは、公式サイトの規約に則ってあらかじめzipファイルを取得しておきます。
インストール手順
①リポジトリからmt-devをクローンして/mt-dev
に移動
git clone git@github.com:movabletype/mt-dev.git mt-dev
cd mt-dev
②/mt-dev/archive
に取得したzipファイルを格納。本記事ではMT-8.4.2.zipを格納。
③以下コマンドを実行(途中エラーが出たので、sudo
をつけてやり直した)
make up ARCHIVE=MT-8.4.2.zip
(あるいは)sudo make up ARCHIVE=MT-8.4.2.zip
処理にすこし時間がかかります。細かい部分は割愛しますが、最終的に以下が起動できていたらOKです。
✔ Container mt-memcached-1 Started
✔ Container mt-mt-watcher-1 Started
✔ Container mt-mt-1 Started
✔ Container mt-db-1 Running
✔ Container mt-httpd-1 Started
④DBを作成する
make exec-mysql SQL='CREATE DATABASE mt /*!40100 DEFAULT CHARACTER SET utf8mb4 */'
(あるいは)sudo make exec-mysql SQL='CREATE DATABASE mt /*!40100 DEFAULT CHARACTER SET utf8mb4 */'
⑤環境構築完了
http://localhost/cgi-bin/mt/mt.cgi にアクセスして、ユーザー作成など行う
構築手順は以上です。
起動/終了コマンド
#終了コマンド
make down
#次回起動時
make up ARCHIVE=MT-8.4.2.zip
(あるいは)sudo make up ARCHIVE=MT-8.4.2.zip
プラグインやテーマを追加する
プラグインやテーマは/mt-dev/repo
に格納します。ただしそのまま格納するのではなく、以下のディレクトリ構成にして格納します。
# プラグインの場合
/mt-dev
└/repo
└[プラグイン名] ←`make up`コマンド入力時にオプションで指定する名称(以下起動コマンド参照)
├/mt-static
│└/plugins
│ └[プラグインフォルダ]
└/plugins
└[プラグインフォルダ]
# テーマの場合
/mt-dev
└/repo
└[テーマ名] ←`make up`コマンド入力時にオプションで指定する名称(以下起動コマンド参照)
└/themes
└[テーマフォルダ]
具体的に以下のイメージです。/mt-dev/repo
直下に作成するディレクトリは任意の名称で問題ないと思いますが、プラグインやテーマの名称に合わせておく方が無難かと思います。
# MTAppjQueryの場合
/mt-dev
└/repo
└/MTAppjQuery
├/mt-static
│└/plugins
│ └/MTAppjQuery ← ←mt-staticに置くプラグインリソース
└/plugins
├/ScheduleField ←各種プラグイン本体ディレクトリ(以下同)
├/PlainTextField
├/MTAppjQuery
└/DataAPIProxy
# PageButeの場合
/mt-dev
└/repo
└/PageBute ←ディレクトリを作成
└/plugins
└/PageBute ←プラグイン本体ディレクトリ
起動はmake up
コマンド入力時にREPO=[プラグイン名(テーマ名)]
をオプションとして指定します。指定するのは/mt-dev/repo
直下のディレクトリ名。
複数指定の場合は、REPO=[プラグイン名(テーマ名)1],[プラグイン名(テーマ名)2],...
のようにカンマ区切りで指定します。
# コマンド指定例
make up ARCHIVE=MT-8.4.2.zip REPO=PageBute,MTAppjQuery,sample_theme
(あるいは)sudo make up ARCHIVE=MT-8.4.2.zip REPO=PageBute,MTAppjQuery,sample_theme
管理画面のプラグイン一覧やテーマ一覧を確認し、一覧に表示されていればOKです。
.envファイルで起動コマンドを簡略化する
/mt-dev
内に.env
ファイルを作成し以下を記述しておくと、make up
コマンド入力時のARCHIVE
やREPO
オプションを省くことができます。
ARCHIVE=MT-8.4.2.zip
REPO=PageBute,MTAppjQuery,sample_theme
#起動コマンドはこれだけ
make up
MTのアップデートについて
mt-dev
でMTをアップデートするときは、/mt-dev/archive
フォルダに最新のzipファイルを入れ、make up
コマンドのARCHIVE
オプションで新しいファイル名を指定します。
.env
ファイルを作成している場合は記述されているファイル名を修正し、make up
コマンドを実行します。
管理画面内のバージョン表記が新しいものに変わっていたらOKです。
本記事の内容は以上です。
Discussion