Pesan "Killed" biasanya berarti proses Anda menghabiskan terlalu banyak memori, jadi Anda mungkin perlu menambahkan lebih banyak memori ke sistem Anda jika memungkinkan. Pada saat menulis jawaban ini, saya harus meningkatkan memori mesin virtual saya menjadi setidaknya 768MB agar composer update
dapat berfungsi dalam beberapa situasi.
Namun, jika Anda melakukan ini di server langsung, Anda tidak boleh menggunakan composer update
sama sekali. Yang harus Anda lakukan adalah:
- Jalankan
composer update
di lingkungan lokal (seperti langsung di laptop / desktop fisik Anda, atau kontainer / VM yang berjalan di laptop / desktop Anda) di mana batasan memori seharusnya tidak terlalu parah.
- Unggah atau
git push
file composer.lock.
- Jalankan
composer install
di server langsung.
composer install
kemudian akan membaca dari file .lock, mengambil versi yang persis sama setiap saat daripada mencari versi terbaru dari setiap paket. Ini membuat aplikasi Anda cenderung tidak rusak, dan komposer menggunakan lebih sedikit memori.
Baca lebih lanjut di sini: https://getcomposer.org/doc/01-basic-usage.md#installing-with-composer-lock
Alternatifnya, Anda dapat mengunggah seluruh vendor
direktori ke server, mengabaikan kebutuhan untuk menjalankan composer install
sama sekali, tetapi kemudian Anda harus menjalankannya composer dump-autoload --optimize
.
Jika seperti saya, Anda menggunakan beberapa VM mikro yang kekurangan memori, membuat file swap melakukan trik:
Seperti yang ditunjukkan beberapa komentar, jangan lupa menambahkan sudo jika Anda tidak berfungsi sebagai root.
btw, jangan ragu untuk memilih lokasi / nama file / ukuran lain untuk file tersebut.
/var
mungkin bukan tempat terbaik, tetapi saya tidak tahu tempat mana, dan jarang peduli karena server kecil kebanyakan digunakan untuk tujuan pengujian.sumber
sudo
- Saya harus menggunakan hak akses root untuk menjalankan perintah ini.swapon: swapfile: swapon failed: Operation not permitted
, Mengapa?Sayangnya, komposer membutuhkan banyak RAM & daya pemrosesan. Berikut adalah beberapa hal yang saya lakukan, yang digabungkan, membuat prosesnya dapat ditanggung. Ini ada di cloud playpen env saya.
service mysql stop
(matikan layanan DB / mem-hog Anda untuk membebaskan sebagian RAM - jangan lupa untuk memulainya lagi!)top
untuk melihat konsumsi memori / swap sampai proses selesai.composer.phar update --prefer-dist -vvv
(output verbose [masih hang di beberapa titik saat bekerja] dan menggunakan file zip distro). Mungkin coba--dry-run
juga?sumber
top
denganhtop
, lebih nyaman.Perbaikan DigitalOcean yang tidak memerlukan memori tambahan - mengaktifkan swap, berikut adalah contoh untuk 1gb:
di terminal, jalankan di bawah
Solusi di atas akan berfungsi hingga reboot berikutnya, setelah itu swap harus diaktifkan kembali. Untuk mempertahankannya di antara reboot, tambahkan file swap ke fstab:
buka file di atas tambahkan tambahkan baris di bawah ke file
sekarang restart server. Komposer membutuhkan pekerjaan dengan baik.
sumber
Jalankan
composer self-update
dancomposer clearcache
hapus vendor dan composer.lock mulai ulang lingkungan lokal Anda dan kemudian jalankanphp -d memory_limit=-1 /usr/local/bin/composer install
sumber
Saya mendapat kesalahan ini ketika saya menjalankan
composer install
di dalam wadah PHP DOCKER saya, Ini masalah memori. Diatasi dengan meningkatkan memori SWAP di DOCKER PREFERENSI dari 512MB menjadi 1,5GBsumber
Tingkatkan batas memori untuk komposer
Mungkin perlu reboot setelah perubahan ini
sumber
Saya mendapatkan masalah ini karena paket yang tidak diperbarui dengan benar dengan wildcard, saya menggunakan langsung versi terakhir dan akhirnya berfungsi.
"l3 / cas-bundle": "~ 1.0" -------> "l3 / cas-bundle": "1.1.13"
sumber
Jika Anda menggunakan buruh pelabuhan, Anda dapat menggunakan COMPOSER_PROCESS_TIMEOUT
sumber
Inilah cara saya berhasil menginstal paket maatwebsite \ excel dari komposer di Laravel Framework:
composer update
dari command prompt lokal (kemudian tunggu sampai semua proses install selesai).composer install
di remote server (tunggu sampai semua proses selesai).sumber
sumber
Dipecahkan di Laravel / Homestead (Vagrant Windows)
Edit
Homestead.yaml
dan tingkatkan memori dari 2048 menjadi 4096gelandangan
gelandangan ssh
Instal Symfony dengan baris ini pada folder yang Anda pilih (harus tanpa file)
sumber
Anda dapat mencoba mengatur
preferred-install
ke"dist"
dalam konfigurasi Komposer.sumber
Saya mendapatkan kesalahan ini di lingkungan Docker lokal. Saya menyelesaikannya hanya dengan memulai ulang Docker.
sumber