modx3 (modx2) + composer + ddev
Есть решение
Всем привет.
Modx только начал изучать, как легковесную альтернативу друпал для легких проектов.
Давно сижу на этой (ddev) надстройке над docker. Поэтому для меня логично было развернуть modx именно в этой среде.
Процесс довольно легок и прост:
1. Создаем папку проекта, например test. Далее все операции выполняются из нее
2. создаем конфигурацию ddev (все по умолчанию: название проекта — test, root- web, тип — php):
3. после создания проекта, добавить/изменить в файле .ddev/config.yaml инструкции:
4. запускаем контейнера:
5. переходим в режим ssh:
6. клонируем туда версию модх 2 или 3 (в папку web):
Если при выполнении вышеуказанной команды, получаем ошибку вида:
выполняем команду с параметром --no-security-blocking. Например:
8. Запускаем установку проекта: test.ddev.site:8443/setup/ (посмjтреть url можно через ddev describe )
все делаем, как обычно, но есть одно но:
9. Переименовываем ht.access -> .htaccess в директориях:
10. Если работаете в ide (например, phpstorm), то, при подключении базы данных, надо прописывать:
PS ddev из коробки поддержживает кучу полезных утилит, вкл. xdebug (запуск — ddev xdebug). Наш любимый phpmyadmin тоже ставится элементарно: ddev phpmyadmin — в первый раз поставит, в следующие — запустит
с уважением,
Виталий
Modx только начал изучать, как легковесную альтернативу друпал для легких проектов.
Давно сижу на этой (ddev) надстройке над docker. Поэтому для меня логично было развернуть modx именно в этой среде.
Процесс довольно легок и прост:
1. Создаем папку проекта, например test. Далее все операции выполняются из нее
2. создаем конфигурацию ddev (все по умолчанию: название проекта — test, root- web, тип — php):
ddev config3. после создания проекта, добавить/изменить в файле .ddev/config.yaml инструкции:
host_db_port: "3306" # прописать другой свободный порт, если этот занят (при ddev start сразу об этом сообщат)
webserver_type: apache-fpm # заменяем nginx-fpm на apache-fpm для более комфортной работы
php_version: "8.3" # или любой другая версия, например, 7.4 4. запускаем контейнера:
ddev start5. переходим в режим ssh:
ddev ssh6. клонируем туда версию модх 2 или 3 (в папку web):
composer create-project modx/revolution web 3.x # если ставим modx 2*, указать версию 2.x* для modx 2 выставлять в .ddev/config.yaml php 7.4.Если при выполнении вышеуказанной команды, получаем ошибку вида:
Root composer.json requires phpunit/phpunit ~5.7|~6.5, found phpunit/phpunit[5.7.0, ..., 5.7.27, 6.5.0, ..., 6.5.14] but these were not loaded, because they are affected by security advisories ("PKSA-z3gr-8qht-p93v")" выполняем команду с параметром --no-security-blocking. Например:
composer create-project --no-security-blocking modx/revolution web 2.8.8-pl7. после установки системы, выходим из ssh:exit8. Запускаем установку проекта: test.ddev.site:8443/setup/ (посмjтреть url можно через ddev describe )
все делаем, как обычно, но есть одно но:
сервер базы данных: db9. Переименовываем ht.access -> .htaccess в директориях:
web
web/core
web/manager10. Если работаете в ide (например, phpstorm), то, при подключении базы данных, надо прописывать:
host -localhost,
port -3306 # или ваш, указанный в п.3PS ddev из коробки поддержживает кучу полезных утилит, вкл. xdebug (запуск — ddev xdebug). Наш любимый phpmyadmin тоже ставится элементарно: ddev phpmyadmin — в первый раз поставит, в следующие — запустит
с уважением,
Виталий
Комментарии: 3
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Я тоже когда-то с Drupal перешел на MODX, назад ни разу желания не возникало возвращаться))
Можешь только уточить, на windows или на mac работаешь с описанным в статье?
(я всегда работаю сразу на хостинге, но кому нужно локально, лучше уточнять, когда речь о докере)
Если пригодится, буду только рад )
Все описанное — про линукс (ubuntu)
PS с друпала уходить не планирую. Нравится система и очень, особенно текущая 11 версия. Для разработки, имхо, пока выглядит гораздо «прямее», чем модх.