Conoha VPSでLaravel デプロイ

job_illustrator_pc_woman-e ※Web開発
Conoha VPSでLaravel デプロイ - Qiita
Conoha VPSでLaravel デプロイVPSでLaravelのデプロイの記事が少なかったので載せましたConoha VPSの設定を終えた後から完結書いていきます。ユーザー設定ユーザー…

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の該当部分を下記のように書き換えます。
image.png
image.png
image.png
image.png

写真ではMyBBSになっています。

保存してApacheを再起動
systemctl restart httpd

以上です

タイトルとURLをコピーしました