Composer kullanarak herhangi bir php kütüphaneyi kurmaya çalıştığınızda [ErrorException] proc_open(): fork failed - Cannot allocate memory hatasını alıyorsanız . Bunun nedeni, VPS'nin belleği yetersiz kaldığı ve Swap alanı etkin olmadığı için olabilir.
Çözümü oldukça basittir. Yapmanız gereken aşağıdaki adımları takip etmek.
Konsola aşağıdaki komut ile sistemin ne kadar bellek kullandığına ve swap alanı ayrılmış mı? Kontrol edebilirsiniz.
free -m
Görüldüğü üzere swap alanı ayrılmamış.
total used free shared buff/cache available Mem: 3955 2035 924 138 996 1547 Swap: 0 0 0
Buradaki komutları kullanarak sisteminize geçici takas alanı ayırabilirsiniz. (count= kendinize göre ayarlayın)
/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
/sbin/mkswap /var/swap.1
/sbin/swapon /var/swap.1
Tüm bu adımları izledikten sonra yeniden composer ile kütüphanelerinizi kurabilirsiniz. Bir sonraki composer yazısında kalıcı takas alanı oluşturmayı anlatmak olucak.
Kaynak : https://getcomposer.org