2020-07-23 yps学習記録その2
2020/07/23
やったこと
- mysql5.7のインストール
- Nginxのインストール
- PHP7.3のインストール
- VScodeの設定
yps1 task2
- mysql5.7のインストール
MySQLはデータベース管理システムのこと!
sudo yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
sudo yum install -y mysql-community-server
mysqld --version // バージョン確認、表示されればok
sudo systemctl enable mysqld // 自動起動設定
以下のコマンドでエラー出てないか確認。
sudo systemctl start mysqld
sudo systemctl status mysqld
sudo systemctl stop mysqld
以下のコマンドで初期パスワードを取得。
sudo cat /var/log/mysqld.log | grep -i root
表示される内、root@localhost:XXXXX…が初期パスワードになる。
このパスワードを入れてログインする。
sudo systemctl start mysqld
mysql -u root -p // このコマンドの後初期パスワード入力
mysqlのプロンプトになったらパスワードを変更する。
SET PASSWORD = PASSWORD('XXXXXXXX');
パスワード変更できたらexitで一旦抜ける。
sudo vi /etc/my.cnf
以下を追記する。
character-set-server=utf8mb4
[client]
default-character-set=utf8mb4
そうしたら、mysqlを再起動&ログインして設定確認。
sudo systemctl restart mysqld
mysql -u root -p
mysqlプロンプトで以下を入力。
show variables like "chara%";
utf8mb4が表示されてるのを確認。
- Nginxのインストール
Nginxはwebサーバのこと!
まずはファイルを作成。
sudo vi /etc/yum.repos.d/nginx.repo
以下を入力して保存する。
[nginxv]
name=nginx repo
baseurl=https://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
いよいよNginxをインストールする。
sudo yum install nginx -y
nginx -v // バージョンが表示されればok
sudo systemctl enable nginx // 自動起動設定
AWS EC2のインスタンスのインバウンドルールにHTTPとHTTPSを追加する。
ターミナルに戻ってNginxを起動。
sudo systemctl start nginx
これでブラウザからアクセスできるようになる!
インスタンスの「IPv4 パブリック IP」がURLになる。
Hello Nginx!!!!
コンフィグをいじるのでターミナルに戻る。
sudo mkdir -p /var/www/html
sudo chown -R centos:nginx /var/www
sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.org
sudo vi /etc/nginx/conf.d/default.conf
server_name //IPv4 パブリック IP
#root /usr/share/nginx/html;
root /var/www/html;
ブラウザでアクセスしていたURLが403エラーになっていればok
- PHP7.3のインストール
EPELとRemiをインストールする。
sudo yum install epel-release
sudo yum update
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum update
EPELとRemiってなんだ?と思ったら、最新バージョンのパッケージを使うために利用される外部リポジトリ、らしい。yumのデフォルトリポジトリのパッケージは古いものも多いらしい。今回の場合は最新のPHPを使いたいから利用した感じですね。多分。
【yum入門】epel, remiなどのレポジトリをyumに追加する方法 | UX MILK
PHPのインストールも進める!
sudo yum -y install --enablerepo=epel,remi,remi-php73 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt php-fpm php-mysql php-mysqlnd
php -v // バージョン確認、表示されればok
コンフィグの編集。
sudo cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.org
sudo vi /etc/php-fpm.d/www.conf
以下を編集して保存。
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
sudo vi /etc/nginx/conf.d/default.conf
index index.php index.html index.htm; // index.phpを追加
tryfiles $uri $uri/ /index.php?$querystring; // index index.php…の下に追加
// location / { … }の次の行に以下を追加
location ~ .php$ {
fastcgipass unix:/var/run/php-fpm/php-fpm.sock;
fastcgiindex index.php;
fastcgiparam SCRIPTFILENAME $documentroot$fastcgiscriptname;
include fastcgiparams;
}
// fastcgi_pass…の前の行に以下を追加
root /var/www/html;
ここまで編集して保存。
以下のコマンドを一つずつ入力。
sudo systemctl restart nginx
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
sudo chown -R centos:nginx /var/www/
phpファイルを作成する。
vi /var/www/html/index.php
中身に以下を書いて保存。
<?php
echo phpinfo();
?>
以下のコマンドを打つ。
sudo systemctl restart nginx
sudo systemctl restart php-fpm
403エラーだったwebページにphp情報が出るようになる。
-
Lalavelのインストール
cd /tmp php -r "copy('http://getcomposer.org/installer', 'composer-setup.php’);” php composer-setup.php php -r "unlink('composer-setup.php');" sudo mv composer.phar /usr/local/bin/composer sudo chmod +x /usr/local/bin/composer
cd /var/www/html sudo yum install zip unzip -y composer create-project --prefer-dist laravel/laravel yps
cd yps cp -p .env.example .env php artisan key:generate vi .env
.envの中身で設定するところ
APPURL=ブラウザのURL
DBPASSWORD=“MySQLで設定したパスワード”
設定した後いろいろインストールする。sudo yum install npm node -y composer install npm install sudo chown -R centos:nginx /var/www/ sudo chmod -R 777 storage/ bootstrap/cache/
sudo vi /etc/nginx/conf.d/default.conf
/var/www/html;
を
/var/www/html/yps/public;
にする(二箇所)
そしたら再起動する。sudo systemctl restart nginx sudo systemctl restart php-fpm
ブラウザを再起動すると。。。Hello Laravel!!
- VSCodeの設定
あとはVScodeのRemote-SSHの設定。
VSCode の Remote – SSH 機能を使って EC2 上で開発する – サーバーワークスエンジニアブログ
Host yps
HostName XX.XX.XX.XX
User centos
Port XXXXX
IdentityFile /フルパス/XXXX.pem
これでVSCodeでファイルを触れるように!!やったー!
気づきなど
まだコマンドの意味把握しきれてないけどとりあえずいろいろインストールすることに成功した!やったー!連休中に復習しよう。
viで編集するのには慣れてきた!ただすぐ行頭や行末に移動するとか、そういう時短のためのコマンドがふと出せないのでもっともっと慣れる。