问题描述
composer 安装或者更新时报错killed ,因为当前内存不足。
composer require "hhxsv5/laravel-s:3.7.8" -vvv
...
Killed
问题原因
这种情况一般是因为内存不足造成的
解决方案
1. 增大服务器内存
2. 设置swap交换分区
free -m
mkdir -p /var/_swap_
cd /var/_swap_
#创建swap文件
dd if=/dev/zero of=swapfile bs=1M count=2048
chmod 600 swap
#建立swap文件系统
mkswap swapfile
swapon swapfile
echo “/var/_swap_/swapfile none swap sw 0 0” >> /etc/fstab
#cat /proc/meminfo
free -m
#查看是否有设置swap分区
swapon -s
#删除swap分区,最后把之前加入/etc/fstab文件的行删除就好了。
swapoff swap
rm /var/_swap_/swapfile
3. 本地执行composer
那就是在本地开发环境上运行Composer,成功以后把composer.lock上传或者git push到生产服务器上,然后在生产服务器上运行composer install。composer install会读取.lock文件里面的配置并直接拉取相同版本的软件包下来,而不是查找每个软件包的最新版本。这样composer对内存的需求量就会降低一些。
composer Out of memory 报错
Fatal error: Out of memory (allocated 754982912) (tried to allocate 33554440 bytes) in phar:///usr/local/bin/composer/src/Composer/DependencyResolver/RuleSet.php on line 84
问题原因
php分配的内存不足
解决方案
1. 修改php.ini
memory_limit = 4096M
2. 临时解禁composer运行内存限制的方法
php -d memory_limit=-1 /usr/local/bin/composer require/isntall/update标签:解决办法,swapfile,swap,composer,memory,var,php,killed From: https://blog.51cto.com/u_6353447/5886796