Как развернуть модули с помощью composer в ограниченной среде

Я начинаю проект с интранет-хостинга. Из-за ограничений на исходящий трафик я не могу использовать обычную стратегию развертывания с композитором, как git pull && composer.phar install ссылаясь на composer.lock файл. Хотя добавление удаленного репозитория в интрасети и использование чего-то вроде git push intranet master возможно.

До сих пор я нашел две возможности для управления этим:

  1. Не добавлять .gitignore на ваш vendor/ Путь и зафиксируйте все в этой папке с вашим проектом.
  2. использование composer.phar archive генерировать .phar-архив (Неправильно прочитанная документация)

Поскольку эти решения не являются рекомендованными для развертывания, у меня возникает вопрос: каковы основные недостатки и общие проблемы этих решений? Как избежать этих проблем?

0

Решение

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

Но имейте в виду:

  • Вы можете захотеть минимизировать / объединить ваши css/sass/less/js сначала файлы
  • Вы наверняка хотите загрузить свои файлы
    • нажать с локального на сервер
    • тянуть на сервер из репозитория
  • ты можешь бежать php artisan migrate после каждого развертывания на сервере
  • вы можете изменить некоторые разрешения на доступ к файлам на удаленном сервере после развертывания

Если вы хотите полностью автоматизированное развертывание, вам понадобится хороший план, какие задачи необходимы для вашего проекта. Может отличаться по нескольким проектам.

Существует множество инструментов, облегчающих выполнение некоторых из этих шагов, а также множество учебных пособий по их использованию. Просто упомянуть несколько:

Если вы просто хотите «загрузить» ваши файлы на удаленный сервер без дополнительных задач автоматизации, вы можете использовать любой инструмент синхронизации, например rsync или любой инструмент синхронизации ftp, даже в winscp есть механизм сценариев для синхронизации файлов с удаленным сервером.

Вы видите, что найти правильный способ развертывания нелегко и во многом зависит от вашей среды и вашего проекта. Наконец-то я бы отошел от включения vendor/ в git репо. Это делает контроль версий действительно ужасным.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]