Windows10にVagrantとVirtualBoxでCentOSの仮想環境を構築⑥composer, Laravelインストール
1.composerインストール
①composerのページで最新版を確認
②composerのページの「Getting Started」の通りにインストール。
https://getcomposer.org/doc/00-intro.md
②-1. php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
②-2. php -r "if (hash_file('sha384', 'composer-setup.php') === 'baf1608c33254d00611ac1705c1d9958c817a1a33bce370c0595974b342601bd80b92a3f46067da89e3b06bff421f182') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
②-3. php composer-setup.php
②-4. php -r "unlink('composer-setup.php');"
②-5. mv composer.phar /usr/local/bin/composer
③インストールの確認
composer -v
https://www.virment.com/how-to-install-composer-linux/
※rootユーザーでcomposerコマンドは使わないらしい。
https://centosinstall.com/centos/centos7/composer
※composer公式ページでLocallyかGloballyか迷ったけど、下記の意味らしい。
Locally:特定のプロジェクトのためだけにインストール
Globally:CentOSで開発するあらゆるプロジェクトに使う前提でインストール
2.Laravelインストール
https://readouble.com/laravel/6.x/ja/installation.html
①Laravel 6.0要件の確認
- PHP >= 7.2.0
- BCMath PHP拡張
- Ctype PHP拡張
- JSON PHP拡張
- Mbstring PHP拡張
- OpenSSL PHP拡張
- PDO PHP拡張
- Tokenizer PHP拡張
- XML PHP拡張
https://www.ritolab.com/entry/22
php -m | grep -e openssl -e PDO -e mbstring -e tokenizer -e ^xml$ -e ctype -e json -e bcmath
②足りないものをインストール
※私の場合はbcmathが無かったのでインストール。
yum search --enablerepo=remi,remi-php74 bcmath
sudo yum -y install --enablerepo=remi,remi-php74 php-bcmath
③インストール試みて再度足りないものをインストール
③-0 ※Laravelインストールでエラー発生
Problem 1
- laravel/installer v3.0.1 requires ext-zip * -> the requested PHP extension zip is missing from your system.
- laravel/installer v3.0.0 requires ext-zip * -> the requested PHP extension zip is missing from your system.
参考↓
https://qiita.com/don-bu-rakko/items/e0006a59d3714cecfbde
ext-zipではなくphp-zipでもなくphp-pecl-zipが要るらしい。
sudo yum -y install --enablerepo=remi,remi-php74 php-pecl-zip
③-2. また参考URLと同じエラー発生により、unzipもインストール
As there is no 'unzip' command installed zip files are being unpacked using the PHP zip extension.
This may cause invalid reports of corrupted archives. Besides, any UNIX permissions (e.g. executable) defined in the archives will be lost.
Installing 'unzip' may remediate them.
sudo yum install unzip -y
④パスを通す。(どこからでもプロジェクト作成できるように)
Laravelをインストールした場所を確認。pwdで絶対パスを確認。
export PATH="/home/vagrant/.config/composer/vendor/bin:$PATH"
これでLaravelインストール完了!(したはず!)
→インストールできてなかったっぽい。どうしても見つからない。
ホストとの同期フォルダにて、下記実施してプロジェクトごとにインストールすることに。
[vagrant@localhost html]$ composer create-project --prefer-dist laravel/laravel
パスも通せてないから、composerコマンドが使えない。
とりあえず、下記コマンドでパスを通す。ただし、これではコマンドプロンプトを立ち上げなおすとまたパスが消えてしまうらしい。
export PATH=/usr/local/bin:$PATH
パスの確認
echo $PATH
本当は~/.bash_profileに上記内容を記載するらしいけど、何回やってもうまくいかない(正しい書き方が分からない)ので、あきらめ。毎回パスexportすることに。