composerでインストールする際のコマンドがいろいろあって、ややこしい
laravel-oci8をcomposerでインストールしようとすると、out of memoryが発生し、
インストールできねーって問題をずっと調べていて、何とかなったっぽいのだが
記事によってcomposerでパッケージインストールする方法が異なり、振り回された
ので、最終的にswapファイルを1GBほど作成して、成功したコマンドについて
メモしておく(Φω|
そもそも、PHP7系をインストールするのに、いちいちリポジトリを追加しないと
いけないCentOSとかAmazonLinux2が滅びてしまえばいいのだw
追加するにしても、debian系の方がずっと楽だ。
インフラの人たちにそれは都合がいいのかもしれないが、開発者の身にもなれ!
と思うわ。
インストール前にswapファイルを1~2GBほど増やすのを忘れずに。
大事なことなので2回書いたw
[swapを1GBほど追加]
[root@ip-xx-x-xxx-xx ~]# cd /var/www/html/test
[root@ip-xx-x-xxx-xx test]# /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 13.5241 s, 79.4 MB/s
[root@ip-xx-x-xxx-xx test]# /sbin/mkswap /var/swap.1
mkswap: /var/swap.1: insecure permissions 0644, 0600 suggested.
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=16558696-7358-4caa-818e-38feafdc8e8f
[root@ip-xx-x-xxx-xx test]# /sbin/swapon /var/swap.1
swapon: /var/swap.1: insecure permissions 0644, 0600 suggested.
[root@ip-xx-x-xxx-xx test]# free -m
total used free shared buff/cache available
Mem: 983 109 65 0 807 731
Swap: 1023 0 1023
[インストールに成功したコマンド]
1. laravel-oci8をインストールするため、Laravelプロジェクトまで移動。
※ここでは、test
$ cd /var/www/html/test
2. composerでLaravelのバージョンを指定してインストール実行。
$ composer require yajra/laravel-oci8:^6
※このほかに、apacheとLaravelが参照してるphp.iniが一致しているとは限らない
という情報があって、Laravelが参照しているphp.iniとcomposer本体のフルパスを
指定して実行したりしたがエラー内容が全て違って詰むので不慣れな人は注意。
[いろいろ試したcomposerコマンド]
$ php /etc/opt/remi/php74/php.ini /usr/local/bin/composer require yajra/laravel-oci8:^6
$ php /usr/local/bin/composer require yajra/laravel-oci8:^6
※laravel-oci8のインストールまでの長い苦難の道は、あとで詳しくまとめる。