Projekt powstał przy okazji zdalnej konfiguracji Syliusa — całkowicie przez SSH, z telefonu. Kroki konfiguracyjne były na tyle powtarzalne, że warto było je zautomatyzować, więc złożyłem boilerplate DDEV. Zanim uznałem go za gotowy, ktoś udostępnił go publicznie — opublikowałem go więc jako wczesną alfę i rozwijałem dalej.

Po roku użytkowania wewnętrznego wyszło v1.0.0 — z pełnym wsparciem dla Syliusa 2.x, czystą strukturą i wszystkim, czego używam na co dzień. Następnego dnia pojawiło się v1.0.1 z poprawkami dla różnych platform.

Co to robi

ddev-sylius to szablon projektu oparty na DDEV dla Syliusa 2.x. Sklonuj, uruchom dwie komendy i masz działającą lokalną instancję Syliusa — bez ręcznej konfiguracji wersji PHP, bazy danych ani serwera www.

Co jest w środku

Niestandardowe komendy DDEV dołączone do boilerplate'u:

  • ddev sylius-install — pełna instalacja Syliusa od zera
  • ddev cc — czyszczenie cache
  • ddev dist — instalacja zależności i budowanie assetów
  • ddev security-checker — skanowanie znanych podatności
  • ddev backup / ddev database-import / ddev files-import — backup i przywracanie bazy danych i mediów
  • ddev sylius-cleanup — resetowanie wszystkich danych (przydatne przy testowaniu przepływu instalacji)
  • ddev build-site / ddev rebuild-site — pełna lub częściowa przebudowa projektu

Przetestowane na Windowsie 11 z WSL2, macOS (Apple Silicon) i Linuksie z Dockerem.

Jak zacząć

git clone https://github.com/holas1337/ddev-sylius my-projekt
cd my-projekt
ddev start
ddev sylius-install

Tyle. Po kilku minutach masz działający sklep Sylius z panelem administracyjnym, dostępny pod lokalnym URL-em wygenerowanym przez DDEV.

Co zmieniło się w v1.0.1

Poprawka wydana następnego dnia naprawiła kilka rzeczy, które wyszły podczas testów na różnych platformach: dostosowania specyficzne dla macOS dla Mutagen i wyłączeń katalogów uploadu, aktualizacja MariaDB z 11.4 do 11.8 oraz aktualizacja phpMyAdmin do najnowszej wersji.

Repozytorium jest na GitHubie: holas1337/ddev-sylius. Issues i PR-y mile widziane.