Установка Drupal на хостинг через Composer

Аватар пользователя drobyshev4 drobyshev4 27 марта в 3:14

Здравствуйте!

Заранее прошу прощения за вопрос чайника.
Прочитал, что правильнее всего устанавливать и обновлять Drupal через Composer.
Попробовал уже на трех хостингах - Beget, Spaceweb, Timeweb - везде установка Друпала через терминал вполне себе запускается (вот такой вот командой: composer create-project drupal-composer/drupal-project:8.x-dev some-dir --stability dev --no-interaction), но через секунд 5-6 вылетает с ошибкой вида не хватает памяти, например, вот:

PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 4096 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/RuleSetGenerator.php on line 129

Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 4096 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/RuleSetGenerator.php on line 129

Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory

Я getcomposer.org конечно посмотрел - но ничего не понял, memory_limit не срабатывает (или я неправильно пользуюсь), где я могу на хостинге найти php.ini вообще не понятно (и мне кажется что у меня и нет к нему доступа)...

Чувствую, что я что-то совершенно очевидное упускаю, но не пойму, что именно.... Sad
Можно просто ткнуть меня в ссылку, где о подобной проблеме все расписано, ни в одном мануале ни на русском ни на английском подобного не нашел...

Спасибо!

Комментарии

Аватар пользователя Selpi Selpi 27 марта в 9:23
1

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

Аватар пользователя Punk_UnDeaD Punk_UnDeaD 27 марта в 16:39

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

Аватар пользователя Selpi Selpi 27 марта в 16:46

Композер тебе далеко не всякий шаред хостинг позволит запустить, или памяти не хватит для его работы. Так что выгрузку на хостинг лучше таки делать гитом/рсинком и т.п.

Аватар пользователя ivnish ivnish 27 марта в 10:22
1

drobyshev4 wrote: Чувствую, что я что-то совершенно очевидное упускаю

Да, так и есть. Только самые упрямые устанавливают сайты прямо на хостинге. Все остальные делают это у себя на локалке, а потом запускают только composer install на хостинге, чтобы скачать пакеты по заранее заготовленному списку.

Аватар пользователя drobyshev4 drobyshev4 27 марта в 10:50

Спасибо большое всем! Вот оно оказывается в чем дело..., теперь логика установки на хостинг стала понятнее, буду разбираться дальше.

Аватар пользователя V-F V-F 29 марта в 18:15

Здравствуйте!

Установка Drupal 8.8.4 на Виртуальном хостинге проходит успешно, но при установке языка (Russian) по-умолчанию на странице Languages, сервер использует 100% ресурсов и через несколько минут админка "падает".
PHP 7.3, memory_limit 1024, Composer version 1.8.6., php.ini - на хостинге не нашел.
Менял версии PHP, тех.поддержка увеличивала RAM до 2 Gb, увеличил max_execution_time - 300, но опять error:
Allowed memory size of 1073741824 bytes exhausted (tried to allocate 20480 bytes) in
/home/globaled/public_html/vendor/twig/twig/src/Error/Error.php on line 267.

PHP Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 20480 bytes) in /home/globaled/public_html/vendor/twig/twig/src/Template.php on line 469

Подскажите, есть ли еще способы, кроме установки на локальном ПК и переносе на хостинг.
Заранее, спасибо!

Аватар пользователя Selpi Selpi 29 марта в 20:17

Композер не используется при работе друпала (т.е. смена языка ни коим образом композер не задействует). Он нужен только для выкачивания самого друпала и его зависимостей перед установкой, также, если вы захотите установить сторонние (контриб) модули.
Для работы 8-го друпала без сторонних модулей и 128Мб для пхп с запасом хватит.

В общем крайне рекомендуется проводить изначальную выкачку композер проекта на сторонней машине.

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