Каждый раз, когда хотелось быстро попробовать что‑то на Symfony, начиналась одна и та же история: поднять контейнер с PHP‑FPM или FrankenPHP, провалиться в контейнер, поставить symfony/skeleton, настроить Nginx или
Caddyfile
, прописать переменные окружения... И всё это до того, как написана хоть одна строчка кода.DI‑контейнер, консольные команды, компонентная архитектура... Ни для кого не секрет, Symfony заметно ориентируется на Java‑экосистему. Почему бы не попробовать сделать что‑то подобии start.spring.io подумал я.
Так появился пет-проект symfony-init.dev
Что получает пользователь
Выбираешь параметры на сайте:
PHP: 8.3, 8.4, 8.5 (версии из php.net в реальном времени)
Сервер приложения: PHP-FPM + Nginx или FrankenPHP
Symfony: актуальные версии (из symfony.com в реальном времени)
База данных: PostgreSQL, MySQL, MariaDB, SQLite или без БД
Кэш: Redis, Memcached или без кэша.
Распространенные расширения: Doctrine ORM, Security, Mailer, Messenger, Validator, Serializer, API Platform, HTTP Client, Nelmio API Doc
Брокер сообщений: RabbitMQ
Нажимаешь "Generate" - получаешь ZIP с полноценным проектом. Внутри: Symfony, docker-compose.yml, Dockerfile, конфиг веб-сервера, настроенный .env. Запускаешь одной командой:
docker compose up -d --build
Объяснить с
Вот и всё.
Стек самого сервиса
Немного иронично, но сервис написан на том же Symfony 7.4, работает под FrankenPHP, покрыт PHP CS Fixer с правилами @Symfony.