У меня проблема, я попытался установить новый пакет в свой проект laravel 4. Но когда я запускаю php composer.phar update
я получаю следующее:
Loading composer repositories with package information Updating dependencies (including require-dev) Killed
Я искал проблему в Интернете и увидел, что проблема в памяти, я думаю, что у меня недостаточно оперативной памяти, я проверил это у меня около 411mb бесплатно. Действительно ли композитору требуется больше оперативной памяти? Может кто-то мне помочь, пожалуйста?
благодаря
В зависимости от количества зависимостей вашего проекта вам может потребоваться больше памяти в вашей системе. Я должен был увеличить память своей виртуальной машины, по крайней мере, до 768 МБ, чтобы в некоторых ситуациях получить composer update
для composer update
.
Однако, если вы делаете это на реальном сервере, вы не должны использовать composer update
.
Что вам нужно сделать:
composer update
в локальной среде (либо на вашей физической машине, либо на виртуальной машине разработки) git push
файл composer.lock composer install
на живом сервере composer install
будет затем читать из .lock-файла, получая одни и те же версии каждый раз, а не находить последние версии каждого пакета. Это делает ваше приложение менее вероятным для взлома, а композитор использует меньше памяти.
Подробнее здесь: https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file
Если я, как и я, вы используете некоторую микро-виртуальную машину без памяти, создание файла подкачки делает трюк:
free -m mkdir -p /var/_swap_ cd /var/_swap_ #Here, 1M * 2000 ~= 2GB of swap memory dd if=/dev/zero of=swapfile bs=1M count=2000 mkswap swapfile swapon swapfile chmod 600 swapfile echo "/var/_swap_/swapfile none swap sw 0 0" >> /etc/fstab #cat /proc/meminfo free -m
btw, не стесняйтесь выбирать другое местоположение / имя файла / размер для файла.
/ var, вероятно, не лучшее место, но я не знаю, какое место было бы, и редко бывало, потому что крошечные серверы в основном используются для тестирования.
Это связано с тем, что на вашем хостинге заканчивается память, пожалуйста, просмотрите этот учебник https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-12-04
Несомненно, композитор требует много оперативной памяти и вычислительной мощности. Вот несколько вещей, которые я сделал, которые в совокупности сделали этот процесс терпимым. Это было на моем облачном мануале env.
service mysql stop
(убейте свои service mysql stop
DB / mem-hog, чтобы освободить некоторую ОЗУ – не забудьте запустить его снова!) composer.phar update --prefer-dist -vvv
(подробный вывод [по-прежнему зависает в некоторых случаях при работе] и использует файлы zip-файла zip). Может быть, попробуй --dry-run
? В случае, если кто-то еще встретится с этой проблемой. Это может привести к тому, что предел дискретизации превысит.
Вы можете попробовать установить preferred-install
в "dist"
в конфигурации Composer WP CLI – обычно в ~/.wp-cli/packages/composer.json
.