Saya tidak bisa menyelesaikan yang ini.
Saya menggunakan paket dasar Linode 1G RAM. Mencoba menginstal paket melalui Komposer dan itu tidak membiarkan saya. Batas memori saya diatur ke "-1" di PHP.ini
Apakah ada hal lain yang bisa saya lakukan untuk menginstal ini?
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing thujohn/rss (dev-master df80a7d)
Downloading: 100%
PHP Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:975
Stack trace:
#0 [internal function]: Composer\Util\ErrorHandler::handle(2, 'proc_open(): fo...', 'phar:///usr/loc...', 975, Array)
#1 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(975): proc_open('stty -a | grep ...', Array, NULL, NULL, NULL, Array)
#2 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(853): Symfony\Component\Console\Application->getSttyColumns()
#3 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(818): Symfony\Component\Console\Application->getTerminalDimensions()
#4 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(752): Symfony\Component\Console\Application->getTerminalWidth()
#5 phar:///usr/local/bin/com in phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php on line 975
Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:975
Stack trace:
#0 [internal function]: Composer\Util\ErrorHandler::handle(2, 'proc_open(): fo...', 'phar:///usr/loc...', 975, Array)
#1 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(975): proc_open('stty -a | grep ...', Array, NULL, NULL, NULL, Array)
#2 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(853): Symfony\Component\Console\Application->getSttyColumns()
#3 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(818): Symfony\Component\Console\Application->getTerminalDimensions()
#4 phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php(752): Symfony\Component\Console\Application->getTerminalWidth()
#5 phar:///usr/local/bin/com in phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php on line 975
php
laravel
laravel-4
composer-php
ericbae
sumber
sumber
Sepertinya Anda kehabisan memori swap, coba ini
seperti yang disebutkan oleh @ BlackBurn027 pada komentar di bawah, solusi ini dijelaskan di sini
sumber
Sebagai panduan pemecahan masalah komposer di sini, ini dapat terjadi karena VPS kehabisan memori dan tidak memiliki ruang Swap yang diaktifkan.
Untuk mengaktifkan swap, Anda dapat menggunakan misalnya:
Atau jika di atas tidak berfungsi maka Anda dapat mencoba membuat file swap
sumber
Saya telah menghadapi masalah yang sama. Saya menggunakan Microinstance Gratis AWS yang memiliki memori lebih sedikit. Saya selalu mencoba salah satu opsi di bawah ini dan selalu berfungsi (Sebelum semua ini, periksa apakah Anda memiliki versi komposer terinstal)
atau hapus konten folder vendor dan coba pembaruan komposer.
Opsi kedua mencoba untuk memperbarui semua komponen, jika tidak ada pembaruan, itu mengambil paket dari cache yang lain mengambil dari dist
Catatan: Silakan ubah batas memori sesuai pilihan Anda.
atau
Buat partisi swap dan coba. Partisi swap adalah bagian dari hard drive yang digunakan linux sebagai memori virtual ketika kehabisan memori fisik. Ini mirip dengan file swap windows saja daripada menggunakan file yang sebenarnya, linux menggunakan partisi pada hard drive.
Semoga ini membantu
sumber
sudo php -dmemory_limit=750M composer.phar update
saya mendapat kesalahan iniCould not open input file: composer.phar
tolong bantuMudah, ketikkan perintah ini:
rm -rf vendor/
rm -rf composer.lock
php composer install --prefer-dist
Harus bekerja untuk mesin dengan memori rendah
sumber
Berikut adalah langkah-langkah untuk memperbaiki masalah: (metode alokasi file SWAP cepat cepat digunakan)
Pengaturan Server SWAP (Ubuntu 16.04 SWAP untuk Memperbaiki Kesalahan Memori)
Periksa apakah Anda sudah menukar, memori dan ukuran disk:
Buat file swap: (ubah 1G ke 4G jika Anda ingin memori SWAP 4GB)
Periksa file swap:
Tetapkan File Tukar:
Periksa apakah swap OK, memori dan ukuran disk:
Lampirkan File Tukar di System Restart:
Sesuaikan Pengaturan Swap File:
Prioritas File SWAP: (0-100% => 0: Jangan menukar, 100: Pakai SWAP dan bebaskan RAM)
Hapus inode dari cache: (100: sistem menghapus informasi inode dari cache terlalu cepat)
sumber
sudo nano /etc/sysctl.conf
, Jadi, saya lewati lalu restart Nginx dan kemudian lakukancomposer install
(sebelumnya saya sudah menghapus direktori vendor) dan itu berfungsi. Terima kasih!Saya memiliki masalah yang sama pada gelandangan. Saya memperbaikinya dengan mengalokasikan lebih banyak memori.
sumber
vb.customize ...
Anda tidak dapat melakukannyavb.memory = 1024
.Mencoba
itu pada dasarnya meningkatkan memori swap
sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024 && sudo /sbin/mkswap /var/swap.1 && sudo /sbin/swapon /var/swap.1
sumber
Coba itu:
sumber
Inilah solusi yang saya temukan yang bekerja untuk saya setiap saat:
sumber
Saya mencoba dengan hanya menghapus folder vendor dan file composer.lock dan kemudian saya menjalankan perintah
composer clear-cache
dan kemudiancomposer install
. Jadi itu berfungsi tanpa kesalahan.sumber
Anda dapat menggunakan yang berikut untuk memeriksa memori (swap) gratis Anda
Untuk mengaktifkan swap, Anda dapat menggunakan misalnya:
sumber
free -m
dan memperhatikan bahwa saya tidak memiliki memori, bahkan dalam swap .. kemudian melakukannyasudo reboot
dan berhasilIni tampaknya menjadi masalah berulang dengan instance server 1GB dan lebih kecil. Selain mencoba mematikan proses dan mengubah pengaturan swap, Anda dapat menginstal di mesin lokal dan mengunggah.
sumber
Kadang-kadang dengan memperbarui sendiri komposer itu memecahkan masalah
Bersulang
sumber
composer self-update
, jika seseorang yang tidak terbiasa dengan komposer membaca balasan ini.Coba ini:
Ini bekerja untuk saya di Centos 6
sumber
Saya meningkatkan PHP
memory_limit
dari 128M menjadi 512M dan me-restart server. Itu memecahkan masalah.sumber
Saya masuk ke situasi ini sebagian besar kali jadi biasanya saya biasa mengikuti langkah pengaturan memori swap.
Tapi sekarang saya menemukan trik alternatif sederhana yang berhasil untuk saya.
Jalankan
composer update --no-dev
Selaincomposer update
sumber
Saya memecahkan masalah yang sama di Vagrant. Saya meningkatkan nilai memory_limit dan menghapus cache komposer: sudo rm -R ~ / .composer dan akhirnya reload gelandangan.
sumber
memiliki masalah yang sama dengan pembaruan php composer.phar di hosting 512mb saya.
diselesaikan dengan menginstal php composer.phar
sumber
Buat swap dan jalankan perintah komposer lagi. Saya harap ini akan berhasil untuk Anda.
sumber
Dalam kasus saya, saya mencoba semua yang tercantum di atas. Saya menggunakan Laravel dan Vagrant dengan memori 4GB dan swap, dengan batas memori yang diatur ke -1. Saya menghapus vendor / dan mencoba versi PHP lainnya. Akhirnya, saya berhasil bekerja dengan berlari
Dan kemudian pemasangan komposer bekerja kembali seperti biasa.
sumber
Saya memiliki masalah serupa pada server termurah (RAM 512MB) yang di-host dengan DigitalOcean , dan saya juga menjalankan Jenkins CI di server yang sama. Setelah saya menghentikan instance Jenkins, perintah install komposer bekerja (ya, to the point, gagal dengan ekstensi mcrypt hilang selain sudah diinstal!).
Mungkin jika Anda memiliki aplikasi lain yang berjalan di server, mungkin ada baiknya mencoba menghentikannya dan menjalankan kembali perintah.
sumber
Harap nonaktifkan bundling js dan tambah memori. Itu harus memperbaikinya. Saya memperbaiki milik saya dengan menonaktifkan bundling js.
Terima kasih
sumber
edit file php.ini dan tambah nilai memory_limit.
akan menyelesaikan masalah ini.
sumber
> mmap () gagal: [12] Tidak dapat mengalokasikan memori
Perbarui memori di Server dan minta '4G' Ubah Ram 4GB [coba ubah jenis server atau tambahkan ram lainnya]
2 File Kita perlu mengedit
atas perintah
dan edit
"memory_limit 756M”
ke4G
Php ini di php 7.0
memory_limit = 128M ke 4G
#AWS #AMAZONLINUX # MAGENTO2 # PHP7.0
sumber
.htaccess
tidak akan memengaruhicomposer
, karena ini tidak dijalankan melalui server web