Докер, бродячие песочницы в разработке php - PullRequest
0 голосов
/ 08 декабря 2018

У меня неправильное понимание, и я хочу найти лучший подход среды песочницы разработки для проекта PHP.

У меня есть репозиторий github, в котором будет размещен код .php, .js (будет использоватьсяWebpack с babel), файлы .scss и различные машины для разработки (windows, mac, ubuntu).

Я хочу иметь возможность извлечь код из git hub, запустить команду (например, vagrant up) и запуститьВМ / контейнер / песочница с apache2, php, nodejs, которые будут запускаться для анализа файлов .scss и .js в один, а затем смогут запускать сервер на каждой платформе без необходимости локально запускать gulp на ПК разработчика, а затем иметьXAMPP установлен с правильным путем для HTTP-папки apache2.

Какой подход лучше?Использовать vagrant VM с конфигурацией файла в контейнерах repo или docker?

Я просто хочу упростить процесс разработки и иметь автоматизированные инструменты, которые запускают сервер, компилируют sass и babel js.

Спасибо

1 Ответ

0 голосов
/ 08 декабря 2018

Хотя я большой поклонник Docker, это не всегда подходящий инструмент для работы.У Docker есть такие принципы, как неизменяемость и единый сервис на контейнер, которые, вероятно, не будут работать хорошо для того, что вы хотите сделать без обучения.

Существует замечательный инструмент Vagrant с открытым исходным кодом под названием PuPHPet , который упрощает настройку среды разработки.

https://puphpet.com/

enter image description here

На веб-сайте PuPHPet вы можете настроить образ с Apache2, PHP и NodeJS с помощью их мастераи он сгенерирует файл Vagrant, который вы будете запускать локально на своей рабочей станции.Таким образом, вы можете получить все необходимое программное обеспечение без необходимости самостоятельно устанавливать / обслуживать его.Он также поддерживает установку баз данных, очередей и почтовых приложений, если они вам нужны.

Для вашего сценария я бы клонировал код из Github на вашу рабочую станцию ​​(не виртуальную машину) и смонтировал его, используя Синхронизированные папки для Vagrant, но все еще напрямую доступный для вашей IDE.

...