質問: ### やりたいこと ロリポップのサーバにLaravelをインストールしたい。 ### 環境 サーバ:ロリポップ OS:Linux(CentOS) PHP:Ver.7.1 ### 実行コマンド /usr/local/php7.1/bin/php composer.phar create-project --prefer-dist laravel/laravel プロジェクト名 "5.5.*" エラー後、途中まで作成されてプロジェクト名のフォルダが存在しています。 そのプロジェクト名のフォルダに移動し、以下のコマンドを実行。 /usr/local/php7.1/bin/php ../composer.phar install 結果は変わらず、メモリエラーで失敗します。 ### エラーの内容 ロリポップにLaravelをインストールしようとすると、以下のメッセージが表示されインストールに失敗します。 > > mmap() failed: [12] Cannot allocate memory > > PHP Fatal error: Out of memory (allocated 727719936) (tried to allocate 4096 bytes) in phar:///home/users/2/schoolbus.jp-chi-papa/web/minten_work/composer.phar/src/Composer/DependencyResolver/Solver.php on line 223 > > > Fatal error: Out of memory (allocated 727719936) (tried to allocate 4096 bytes) in phar:///home/users/2/schoolbus.jp-chi-papa/web/minten_work/composer.phar/src/Composer/DependencyResolver/Solver.php on line 223 > > > ### 試したこと メモリー不足なので、phpコマンドのオプションでメモリの制御をしました。 コマンドは以下 /usr/local/php7.1/bin/php -d memory_limit=-1 ../composer.phar install 結果は同じく、メモリの無制限オプションが効いてくれないっぽい挙動をしました。 ### 回避策 ・コマンド実行時にキャッシュさせない キャッシュとしてメモリを食いつぶしているみたいなので、キャッシュをさせないでインストールする方法があれば解決するのではと考えています。 ・パッケージとして1つになっているものを個別にインストール パッケージで一気にインストールではなく、個別インストールしていければ、解決するかもと考えていますが、そんなやり方があるのかどうか。。 ### エラーの詳細 composerのオプションの、メモリ使用量が確認できる「--profile」とデバッグログを出力する「-vvv」を使用して実行した結果は以下の通りです。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/1a51857d2dac518df33fc7642d47de95.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/937486187a799cfac45a402fc73e79a2.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/82a5f188fc92cbd25c480d6578979e6d.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/420bc3e9b19333d874f581cf323cedeb.png)
回答: Lolipopは共用サーバなのでユーザーごとのメモリ使用量の上限が決められている可能性があります。 (PHPのメモリ使用量とは別に) ローカルで作成したものをアップロードする形を取るのが良いかと思います。