Conoha VPSでLaravel デプロイ
VPSでLaravelのデプロイの記事が少なかったので載せました
Conoha VPSの設定を終えた後から完結書いていきます。
ユーザー設定
ユーザー作成
adduser test-user
ユーザーパスワード設定
password test-user
作成したユーザーをwhhelグループに追加
gpasswd -a test-user whhel
# Apacheサーバーをインストール
Apacheサーバーをインストール
dnf -y install httpd
apacheサーバーを起動
systemctl start httpd
apacheの状態確認
systemctl status httpd
例
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/httpd.service.d
└─php-fpm.conf
Active: active (running) since Thu 2021-10-21 23:09:05 JST; 2 days ago
Docs: man:httpd.service(8)
Process: 148519 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0/SUCCESS)
Main PID: 114715 (httpd)
......
上記のように表示されたら成功です
サーバー起動時に自動的にApacheを起動するように設定
systemctl enable httpd
ファイヤウォールの設定
http, httpsのアクセスを開放
sudo firewall-cmd --permanent -add-service=http
sudo firewall-cmd --permanent -add-service=https
ファイアーウォールの設定の再読み込み
sudo firewall-cmd –reload
Firewall port開放
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
リロード
firewall-cmd –reload
firewallの設定を確認するコマンド
firewall-cmd --list-all
PHPのインストール
インストールできるPHPのバージョンを確認
dnf module list php
今回は7.4をインストール
dnf -y module install php:7.4
PHP反映
systemctl restart httpd
PHP動作確認
php -v
Apacheにmod_sslをインストール
dnf install -y mod_ssl
Apacheを再起動して反映
systemctl restart httpd
# httpd.confファイルを編集
httpd.confファイルを編集
vi /etc/httpd/conf/httpd.conf
Listen 80のあとに追記
例
Listen 80
ServerAdmin root@testtest.com
DocumentRoot /var/mymy/public
ServerName testtest.com
Apacheを再起動
systemctl restart httpd
# SSL設定
Apacheにmod_sslをインストール
dnf install -y mod_ssl
Apacheを再起動して反映
systemctl restart httpd
certbotをインストール
dnf install certbot python3-certbot-apache
sslの反映
certbot --apache -d twi-twi-poll.com
Apacheを再起動して反映
systemctl restart httpd
通常の更新 (有効期限が1ヶ月以内出ないの使えない)
certbot renew
強制的に更新
certbot --force-renew
cronで自動更新の為にcrontabファイルを編集
vi /etc/crontab
末行に以下を追記
0 0 * * * root /usr/bin/cerbot renew
Composerのインストール
Composerのインストーラーをダウンロード
sudo wget https://getcomposer.org/installer -O composer-installer.php
Composerのインストール
php composer-installer.php --filename=composer --install-dir=/usr/local/bin
Composerのアップデート
composer self-update
Composerのバージョンの確認
composer --version
例
Composer version 2.1.9 2021-10-05 09:47:38
ドキュメントルートの設定
まずは今回デプロイするアプリケーションをGitHubからcloneしましょう。
varディレクトリーに移動
cd /var
varディレクトリーでgit clone
git clone https://github.com/GitHubユーザー名/laravel-app.git
SSLを設定する過程で、/etc/httpd/confにhttp-le-ssl.confという名前のファイルができているはずです。
コチラを編集してドキュメントルートを/var/laravel-app/publicに設定しましょう。
vi /etc/httpd/conf/http-le-ssl.conf
以下のようにドメインに合わせて設定 自身の設定をして下さい
ServerAdmin root@testtest.com
DocumentRoot /var/mymy/public
ServerName testtest.com
Mysqlのドライバーを入れる
php -m | grep pdo pdo_sqlite
dnf install php-mysqlnd
php -m | grep pdo
pdo_mysql
laravelプロジェクトファイルに移動
例mymy
composer インストール
composer install
.env.exampleファイルをコピーして.envを作成
cp .env.example .env
アプリのキー作成
php artisan key:generate
Apacheの設定ファイル書き換え
設定ファイル/etc/httpd/conf/httpd.confの該当部分を下記のように書き換えます。
写真ではMyBBSになっています。
保存してApacheを再起動
systemctl restart httpd
以上です
参考にした記事です