Комментарии 6
Нет, требований к локальной машине, кроме docker+make нет. Вызовы интерпретатора и composer происходят в контейнерах. Посмотрите внимательней, этот момент раскрыт в статье.
make используется из-за его доступности из коробки и распространённости. Taskfile -- ещё одна зависимость, которую надо иметь для запуска. Не оспаривая её преимуществ, это усложнение решения поставленной задачи. Я за годы использования не припомню казусов с make. Да, синтаксис специфичен, и какие-то решения без мануала написать не получится, но работает исправно и достаточно прост для обсуждаемого кейса.
Да, простая идея, что конкретные версии рантаймов и инструментов не должны засорять машину разработчика получает всё больше реализаций.
Аналогичную цель преследуют и laradock и laravel sail.
Однако bash и make недостаточно гибкие, а задачи постепенно становятся всё более сложными. В системах, состоящих из десятков сервисов, одно только клонирование всех их может порядком утомить, не говоря уже об установке зависимостей или ежедневном запуске той или иной группы сервисов.
Позанимавшись некоторое время скриптоводством я перешёл на ELC - обёртку над docker-compose, написанную на golang.
Преследуя аналогичные цели, сделал свой мини-комбайн, не раз выручал.
А как приведенные /bin/php
и /bin/composer
интегрируются с инструментами ОСи? Будет ли например phpstorm корректно понимать такой "интерпретатор"?
Ваш комбайн напомнил мне про laradoc. Я тут скорее за минимализм -- усложнить простое проще, чем упростить сложное)
В phpstorm я не использую подобные интеграции, не могу сказать, мне терминал ближе. В теории может быть, если ему нужен именно путь с исполняемым файлом -- все аргументы прокидываются. С точки зрения ОСи разницы быть не должно.
Используем в компании именно такой подход. Сам работаю на убунту based дистре, но большинство работают на маках. Все работает, есть какие-то различия в области докера, но их не очень много
Докеризированные команды и make, как стандартная точка в проект. Быстрый способ запуска разработки проекта на php