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

0

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

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

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

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

Теги:
composer-php
phar

1 ответ

0

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

Но у вас есть несколько моментов:

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

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

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

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

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

  • 0
    Спасибо за подробный ответ. Но я не собираюсь использовать laravel, хотя это хороший фреймворк, но не тот, который подходит для моего текущего проекта. Ракетчик не знал, хороший инструмент.
  • 0
    Ой, это происходит, когда вы читаете много вопросов, связанных с laravel :) Тем не менее, у вас будут одинаковые баллы независимо от того, какую платформу вы используете. Даже если вы пишете свое приложение с нуля, вам, возможно, придется минимизировать сценарий или выполнять другие задачи до / после развертывания ваших файлов. Ваша стратегия развертывания будет сильно зависеть от типа вашего проекта и вашей среды.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню