composerでライブラリのインストールとインストール時のエラー対応方法
2024/01/16
composerでライブラリをインストールする際に「The following exception is caused by a lack of memory or swap, or not having swap configured」というエラーメッセージが表示され、正常にインストールできなかった。Google翻訳を通すとメモリもしくはスワップ不足とのこと。以下に対応方法のメモ。
対応方法
サーバにSSH接続して以下コマンドを実行することで解決した。
/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024 /sbin/mkswap /var/swap.1 /sbin/swapon /var/swap.1
PHPのメモリ上限を増やすのは?
上記対応を取る前にPHPのメモリ割り当てがデフォルトの32MBとかになっていたので、上限を増やせばいいのでは? と思い、「memory_limit = 512M」等にしてみるも改善されなかった。
そもそもcomposerって何?
以前にも止むに止まれぬ事情でcomposerを使用することがあった。しかしながら、それ以降に自身でインストールすることはなくイマイチcomposerが何なのかよく分かっていなかった。
さすがにそろそろ使えるようになっていた方が良いかと思い、composerが何なのか調べてみたところPHPで使用するライブラリのパッケージシステムとなり、コマンドを実行することで依存関係のパッケージも全てインストールできるという便利なものらしい。
今回はPHPExcelというライブラリを使用したかったのだがGithubからソースを丸ごとダウンロードし、FTPでアップロードするも正常に動かず、泣く泣くcomposerでインストールすることで解決できた。
composer自体のインストール
インストールしたいディレクトリにcdコマンドで移動しておき、以下コマンドでインストールできる。
curl -sS https://getcomposer.org/installer | php
ライブラリのインストール
今回はPHPExcelをインストールするという想定。composerをインストールしたディレクトリにcdコマンドで移動しておき、以下コマンドでインストールできる。
php composer.phar require phpoffice/phpexcel
参考サイト
https://qiita.com/atwata/items/d6f1cf95ce96ebe58010
https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors
関連記事
-
-
AlmaLlinux8でswap領域を後から追加する方法
swap領域作成の際、だいぶ前にサーバに搭載されているメモリ量と同じ値(メモリ1 ...
-
-
CentOS6系環境のVPSに対してSFTP接続する方法
VSPでFTP接続からSFTP接続に移行したかった。以下に方法をメモ。 &nbs ...
-
-
LAMP環境及びFTPサーバの各種設定ファイルのディレクトリまとめ
サーバ内の各種設定ファイルを編集する際にいつもfindコマンドで検索したり、ググ ...
-
-
中国のIPアドレスをiptablesで拒否、遮断する
レンタルしているVPSの一つが最近よく落ちる。原因はどうも海外、特に中国から不正 ...
-
-
OpenLiteSpeedにて同一サーバ内で複数のドメインを運用する方法(バーチャルホスト設定)
OpenLiteSpeedにて同一サーバ内にて別ドメインやサブドメイン等、複数の ...