さくらVPSでLaravelアプリ

さくらVPSにLaravel8をインストールする準備をしてみた

さくらVPSでLaravelアプリを構築しようとしています。

前回はやることを整理しました。

さくらVPSでLaravelアプリを構築 Part-1|ゼロから始めるLaravel勉強会

今回は、さくらVPSの設定をするところから始めます。

さくらのVPS

方法については「貧困エンジニアU」さんのYouTube動画を参照していきます。

Laravelをインストールする手順を詳しく解説します。さくらVPSにPHPのフレームワーク[中級者向け] – YouTube

OSの再インストール

標準OS
CentOS8 x86_64
スタートアップスクリプト>>利用
LAMP(@OFFICIAL)

あとは自分の公開鍵も登録。

これでOSを再インストールします。

公開鍵の変更

先程登録したSSH接続用の公開鍵が、パスフレーズが必要なものでした。

これだと、後のGITによる自動更新のときに支障がでるので、公開鍵の変更を行います。

まずは自分のMacBookにて

$ ssh-keygen

で、新たに鍵を作成。

scp id_rsa.pub root@VPSのIPアドレス:/root/.ssh/id_rsa.pub

これで公開鍵ファイルをサーバーにアップロード。

前のファイル”authorized_key”を削除し、id_rsa.pubをauthorized_keyに名称変更。

MacBookに戻って、

.sshフォルダにあるknown_hostsファイルからVPSのIPアドレスを検索し、これを削除。

.sshフォルダにあるconfigファイルにて

Host newssh
	HostName IPアドレス
	User root
	IdentityFile ~/.ssh/id_rsa
	Port 22
	TCPKeepAlive yes
	IdentitiesOnly yes

に変更。

これでパスフレーズ無しのSSH接続ができます。

ただし、22ポートを開けっ放しにするのは危険なので、開発が終わったらさくらVPSのポ「パケットフィルタ」機能を使って制限をかけます。

PHPバージョンの変更

こちらのURLにターミナルから入力するコマンドの一覧があります。
CentOS8にLaravel8をインストールする手順(動画あり) – うえむ日記(仮)

$ php -v

で、PHPのバージョンを確認。

$ dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

と、これを入力すると

Failed to set locale, defaulting to C.UTF-8

というエラーが発生しました。

CentOS8で日本語化する際にエラー(Failed to set locale, defaulting to C.UTF-8)が発生した際の対応方法 | インフラエンジニアの技術LOG

CentOS8の日本語パックをインストールすると解決するようなので、

$ dnf -y install langpacks-ja

これで日本語パックがインストールされます。

$ dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

まだエラーは出ましたが、再起動すると消えるようなので、このまますすめます。

PHPを無効にする

$ dnf module disable php

php 7.4をいれる

$ dnf module install php:remi-7.4

BCmath拡張をインストール
$ dnf install php-bcmath

remiのパッケージからcomposerをインストールできるようにする

$ dnf –enablerepo=remi install composer

Laravelのインストーラーをインストール
$ composer global require laravel/installer

composerを$PATHに追加

インストール 8.x Laravel

私の方は
$HOME/.composer/vendor/bin
を追加してlaravelのPATHが認識されました。

動画ではこの後、Laravelをインストールされているのですが、gitで同期を取るようにするので、Laravelのインストールは後からにします。

まとめ

これでLaravelをインストールする準備ができました。

次回はgit環境をつくっていきます。