環境を作る度に色んなサイト見て調べてって・・・大変なので、コピペできるように纏めました。
ですが、別のミドルウェアなどに入れ替えたくなりました。
マシンスペック
- Mac mini 2018
- macOS Catalina(10.15.x)
- Intel Core-i7 3.2GHz 6コア
- メモリ 32GB
- SSD 512GB
VM環境
- CentOS 7.x
- Nginx 1.x
-
PHP(PHP-FPM)7.3.x→ PHP(PHP-FPM)7.1.x -
MariaDB 10.3.x→ MySQL5.7.x -
Laravel 6.x→ Laravel5.x - IPアドレス
- 192.168.56.104
- ユーザー/パスワード
- root/vagrant
- vagrant/vagrant
- VM名
- CentOS7
やること
- 既存環境のミドルウェア入れ替え
- 既存環境のLaravel入れ替え
前提
まずは下記従って環境構築する
VirtualBox+VagrantでLaravel開発環境を構築その壱
PHP(PHP-FPM)7.3.x を PHP(PHP-FPM)7.1.x に入れ替える
PHP(PHP-FPM)7.3.x のアンインストール
$ yum list installed | grep php
oniguruma5php.x86_64 6.9.5+rev1-2.el7.remi @remi
php.x86_64 7.3.19-1.el7.remi @remi-php73
php-bcmath.x86_64 7.3.19-1.el7.remi @remi-php73
php-cli.x86_64 7.3.19-1.el7.remi @remi-php73
php-common.x86_64 7.3.19-1.el7.remi @remi-php73
php-devel.x86_64 7.3.19-1.el7.remi @remi-php73
php-fpm.x86_64 7.3.19-1.el7.remi @remi-php73
php-gd.x86_64 7.3.19-1.el7.remi @remi-php73
php-json.x86_64 7.3.19-1.el7.remi @remi-php73
php-mbstring.x86_64 7.3.19-1.el7.remi @remi-php73
php-mysqlnd.x86_64 7.3.19-1.el7.remi @remi-php73
php-pdo.x86_64 7.3.19-1.el7.remi @remi-php73
php-pecl-mcrypt.x86_64 1.0.3-1.el7.remi.7.3 @remi-php73
php-pecl-xdebug.x86_64 2.9.6-1.el7.remi.7.3 @remi-php73
php-pecl-zip.x86_64 1.19.0-1.el7.remi.7.3 @remi-php73
php-xml.x86_64 7.3.19-1.el7.remi @remi-php73
★すべて削除
$ sudo yum -y remove php-*
$ sudo yum -y remove php*
$ php -v
-bash: /usr/bin/php: そのようなファイルやディレクトリはありません
PHP(PHP-FPM)7.1.x のインストール
sudo yum -y install --enablerepo=remi,remi-php71 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt php-mysqlnd php-fpm php-pecl-xdebug php-pecl-zip php-bcmath
設定ファイルを編集
/etc/php.ini
$ sudo vi /etc/php.ini
★点線内を末尾(Gで移動)にコピペ
---
xdebug.remote_enable = On
xdebug.remote_autostart = On
xdebug.remote_connect_back = 1
xdebug.remote_port = 9000
xdebug.scream = 0
xdebug.show_local_vars = 1
xdebug.idekey=PHPSTORM
---
:wq
/etc/php-fpm.d/www.conf
$ sudo vi /etc/php-fpm.d/www.conf
★下記を点線内に編集
user = apache
group = apache
listen = 127.0.0.1:9000
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660
↓
---
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
---
:wq
$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
$ sudo systemctl restart nginx
MariaDB 10.3.x を MySQL5.7.x に入れ替える
MariaDB 10.3.x のアンインストール
★MariaDBのパッケージを確認
$ rpm -qa | grep aria
MariaDB-compat-10.3.23-1.el7.centos.x86_64
MariaDB-common-10.3.23-1.el7.centos.x86_64
MariaDB-server-10.3.23-1.el7.centos.x86_64
MariaDB-client-10.3.23-1.el7.centos.x86_64
★すべて削除
$ sudo yum -y remove MariaDB*
★関連ライブラリも削除
$ sudo rm -rf /var/lib/mysql
※参考
https://glodia.jp/cent_mariadb_to_mysql
MySQL5.7 のインストール
最新のリポジトリを追加
※参考Index of /232905/yum/mysql-5.7-community/el
2020/06/15現在の最新は「7/x86_64/mysql57-community-release-el7-10.noarch.rpm」
$ sudo rpm -Uvh https://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql57-community-release-el7-10.noarch.rpm
$ sudo yum -y install --enablerepo=mysql57-community mysql-community-server
$ mysqld --version
mysqld Ver 5.7.30 for Linux on x86_64 (MySQL Community Server (GPL))
$ sudo systemctl enable mysqld.service
$ sudo systemctl start mysqld.service
$ sudo grep 'temporary password' /var/log/mysqld.log
2020-06-14T11:56:34.296676Z 1 [Note] A temporary password is generated for root@localhost: XXXXXX
$ sudo mysql_secure_installation
Enter password for user root: XXXXXX
★パスワードは「英字小文字、英字大文字、数字、記号」の組み合わせにしたら通る
例)vagrant#VAGRANT1234
New password: vagrant#VAGRANT1234
Re-enter new password: vagrant#VAGRANT1234
〜 以降の質問は全て y で回答 〜
All done!
$ mysql -u root -p
Enter password: vagrant#VAGRANT1234
★DB:hoge、USER:fuga、PASSWORD:vagrant#VAGRANT1234(※好きなのに変える)
mysql> create database hoge default character set utf8 collate utf8_general_ci;
mysql> CREATE USER fuga@'%' IDENTIFIED BY 'vagrant#VAGRANT1234';
mysql> GRANT ALL ON hoge.* TO fuga@'%';
mysql> CREATE USER fuga@'localhost' IDENTIFIED BY 'vagrant#VAGRANT1234';
mysql> GRANT ALL ON hoge.* TO fuga@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit
※参考
CentOS7.3にMySQL5.7をyumでインストールする
CentOS7.1にMySQL 5.7をインストール
Laravel 6.x を Laravel5.x に入れ替える
Laravel 6.x のアンインストール
$ cd ~
$ rm -fdR laravel6
Laravel5.x のインストール
$ composer create-project --prefer-dist laravel/laravel laravel5 "5.6.*"
$ cd laravel5
$ composer require --dev barryvdh/laravel-ide-helper
$ composer require --dev squizlabs/php_codesniffer
$ chmod -R 777 storage
$ chmod -R 777 bootstrap/cache
.env
$ vi .env
★下記を点線内に編集
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
↓
---
DB_DATABASE=hoge
DB_USERNAME=fuga
DB_PASSWORD=vagrant#VAGRANT1234
---
:wq
$ php artisan migrate
$ php artisan db:seed
bin/clear-laravel.sh
$ mkdir bin
$ vi bin/clear-laravel.sh
★下記を点線内をコピペ
---
# !/bin/bash
php artisan view:clear
php artisan cache:clear
php artisan config:clear
php artisan route:clear
php artisan clear-compiled
php artisan config:cache
composer dump-autoload
php artisan ide-helper:generate
php artisan ide-helper:models -N
php artisan ide-helper:meta
find . -name '._.DS_Store' -type f -ls -delete
---
:wq
$ chmod 755 bin/clear-laravel.sh
$ bin/clear-laravel.sh
Nginx の設定を修正
/etc/nginx/conf.d/default.conf
$ sudo vi /etc/nginx/conf.d/default.conf
★laravel6をlaravel5に置換
:%s/laravel6/laravel5/g
:wq
$ sudo systemctl restart nginx
動作確認(Macのhosts編集)
sudo vi /private/etc/hosts
★下記を点線内に編集
192.168.56.104 laravel6.local
---
192.168.56.104 laravel5.local
---
:wq
ブラウザで確認
http://laravel5.local/
