laravel6에서 laravel/ui를 설치하려고하면 mmap () failed : [12] Cannot allocate memory와 오류가 발생했습니다.
처음 Qiita에 게시합니다.
틀린 부분도 있을지도 모르기 때문에, 있으면 지적 점점 잘 부탁드립니다!
laravel6에서 laravel/ui를 설치하려고하면 예기치 않은 오류를 만났으므로 비망록을 포함하여 게시합니다.
Windows10 php7.4.3 wsl2(Ubuntu) laravel 6.20.34
laravel에서 laravel/ui를 설치하려고 다음 명령 실행
아래 오류가 발생했습니다! ! 뭐야~! ?
조사한 결과 메모리 확보에 실패한 것 같다. . .
아래가 표시되어 PHP의 메모리 사용량이 무제한임을 확인
참고 사이트에서,
Ubuntu에서는 표준으로 swap 영역이 설정되어 있지 않게
라는 것.
스왑 영역 확인
참고 사이트와 같이 다음 명령을 실행
이것으로 해결되었으므로 아래 명령을 다시 실행. 무사히 실행 완료
우분투에서 Laravel 프로젝트 만들기
틀린 부분도 있을지도 모르기 때문에, 있으면 지적 점점 잘 부탁드립니다!
laravel6에서 laravel/ui를 설치하려고하면 예기치 않은 오류를 만났으므로 비망록을 포함하여 게시합니다.
환경
계기
laravel에서 laravel/ui를 설치하려고 다음 명령 실행
php artisan require laravel/ui "^1.0" --dev
오류 발생
아래 오류가 발생했습니다! ! 뭐야~! ?
mmap() failed: [12] Cannot allocate memory
mmap() failed: [12] Cannot allocate memory
PHP Fatal error: Out of memory (allocated 1029541888) (tried to allocate 20480 bytes) in phar:///usr/local/bin/composer/src/Composer/Json/JsonFile.php on line 288
Fatal error: Out of memory (allocated 1029541888) (tried to allocate 20480 bytes) in phar:///usr/local/bin/composer/src/Composer/Json/JsonFile.php on line 288
원인
조사한 결과 메모리 확보에 실패한 것 같다. . .
php의 메모리 상한 확인
php -i | grep memory_limit
// php -i はphp.iniの内容をコマンドラインから確認できる=>phpinfo();と同等の内容
아래가 표시되어 PHP의 메모리 사용량이 무제한임을 확인
php -i | grep memory_limit
memory_limit => -1 => -1
우분투 스왑 영역으로 인한 모습
참고 사이트에서,
Ubuntu에서는 표준으로 swap 영역이 설정되어 있지 않게
라는 것.
스왑 영역 확인
free -m
total used free shared buff/cache available
Mem: 1985 509 958 401 516 942
Swap: 0 0 0
참고 사이트와 같이 다음 명령을 실행
// swapの確認(初期状態だと設定なし
cat /proc/swaps
Filename Type Size Used Priority
// 管理者権限になる
sudo su -
// swap用のディレクトリを作成
mkdir /var/swap
// 2Gのswap領域を作成
dd if=/dev/zero of=/var/swap/swap0 bs=1M count=2048
// パーミッション変更
chmod 600 /var/swap/swap0
// swap領域の割り当て
mkswap /var/swap/swap0
swapon /var/swap/swap0
// 起動時にswap領域が自動割当するように設定
echo '/var/swap/swap0 swap swap defaults 0 0' >> /etc/fstab
이것으로 해결되었으므로 아래 명령을 다시 실행. 무사히 실행 완료
php artisan require laravel/ui "^1.0" --dev
참고
우분투에서 Laravel 프로젝트 만들기