概要
baserCMS5 の公式ドキュメントでは、ローカル開発環境の構築に docker-compose を使用する方法が紹介されています。
実際に私もこの方法を使って baserCMS のプラグイン開発を行ってきました。
参考:
https://baserproject.github.io/5/introduce/build_local_env
一方、他の CMS 開発では DDEV を利用しています。
というのも、DDEV には WordPress・Drupal・Laravel・CakePHP など
各フレームワーク専用のテンプレートが提供されており、開発環境の立ち上げが非常に簡単だからです。
実は、DDEV の公式テンプレートには CakePHP 向けのプリセットがあります。
つまり、baserCMS5 が CakePHP5 ベースで構築されていることを踏まえると、
このテンプレートを流用するだけで DDEV 上で baserCMS5 をそのまま動作させることができると考えました。
そして実際に検証した結果、問題なく動作したため、本記事ではその手順を紹介します。
DDEVとは?
DDEV は、PHP や主要 CMS(WordPress、Drupal、Laravel、CakePHP など)のローカル開発環境を Docker ベースで簡易に構築・管理できるオープンソースツールです。
- Docker を使って仮想環境を自動構築
- CMSやPHPフレームワークに最適化(公式が提供しているテンプレートがある)
- ddev start で即ローカル環境起動
- 複数プロジェクトを簡単に切り替え可能
- ngrok、Xdebug、phpMyAdmin などもワンコマンド導入可能
DDEVのインストール方法
こちらを参照してもらえばmacなら、簡単にインストールが可能です。
※ Windows: Chocolatey 経由でのインストールが推奨されていますが、初回セットアップに多少苦労する可能性があります(というか以前にwindowsで実験した時は苦労した...)
cakephpの環境立ち上げ
公式のインストールテンプレート
※composerからcakeのプロジェクトの作成は不要
1. baserCMS5 プロジェクトの取得
任意のディレクトリで baserCMS のプロジェクトを clone します。
git clone git@github.com:baserproject/basercms.git
2. DDEV の初期設定(CakePHP プリセット)
ddev config --project-type=cakephp --docroot=webroot
-
docroot
はwebroot
を指定 -
.ddev/config.yaml
を開き、以下の設定を有効化:
xdebug_enabled: true
3. 環境の起動と依存パッケージのインストール
ddev start
ddev composer install
4. アプリケーションをブラウザで確認
ddev launch
ちなみに、ブラウザを開かずに現在の DDEV プロジェクトのサービス状態を確認したい場合は以下で確認できます
ddev status
phpMyAdmin の導入
ddev get ddev/ddev-phpmyadmin
ddev restart
# ddev statusでphpmyadminの起動状況を確認
ddev status
これだけでphpmyadminがインストールできます。
おわりに
独自のCMSならテンプレートは用意されていないので...
フレームワークの上に載っていることで、こういったところでも、
恩恵に授かれるところがbasercmsの強みだと再認識しました。