Об этом проекте

Среда Docker, позволяющая эксплуатировать EC-CUBE 4 с одинаковой конфигурацией в средах разработки и продакшена. Среда разработки запускается с помощью git clone и bin/init.sh, а публикация в продакшен осуществляется через bin/publish.sh. Процедура внедрения идентична как для VPS, так и для AWS. Согласно концепции проектирования, основная часть EC-CUBE вшивается в Docker-образ (получается через composer create-project) и не включается в репозиторий. Переключение версий выполняется путем пересборки образа. Через Git управляется только собственный код; структура предполагает наложение через bind-mount только необходимых директорий, таких как app/Customize, app/template, app/DoctrineMigrations, app/Plugin, html/user_data. Загружаемые изображения хранятся в специальном томе (с возможностью замены на NFS/EFS). На базе compose.yaml подготовлены override-файлы для разработки, конфигурация для продакшена и конфигурация только для слоя app для нескольких хостов. В качестве БД можно выбрать MariaDB/MySQL или PostgreSQL. Версия PHP выбирается через теги распространяемого образа, патчи применяются еженедельно. Поддерживаются архитектуры amd64/arm64. В среде разработки доступны Mailpit и phpMyAdmin. В директории bin/ подготовлены скрипты для таких операций, как deploy, console, shell, plugin, test, backup и restore. Команды внутри контейнера выполняются строго от имени www-data, что предотвращает ошибки 500, вызванные созданием файлов с правами root. В директории docs/ размещена раздельная документация по установке, кастомизации, обновлению версий, деплою, бэкапу, масштабированию, мониторингу, тестированию и настройке IDE. Лицензия — Apache License 2.0 (только для файлов репозитория). На основной код EC-CUBE распространяется отдельная лицензия (двойная лицензия GPL/коммерческая).