UbuntuにLaravel をデプロイする方法
1 min read

UbuntuにLaravel をデプロイする方法

現在、PHP 開発者が API や Web アプリを構築するには、Laravel が最適な選択肢です。アプリの起動準備ができたら、次のステップは適切なオペレーティング システム、設定、セキュリティ オプションを選択することです。Laravel アプリをライブ サーバーにデプロイするのは、特に初心者にとっては少々難しい場合があります。このガイドでは、Ubuntu をサーバー オペレーティング システムとして使用し、各ステップを説明します。このチュートリアルの最後には、ライブ サーバーで Laravel アプリが実行されるようになります。サーバーのセットアップから本番環境向けの Laravel の構成まで、すべてをカバーします。

Ubuntu に Laravel をデプロイする方法

始める前に、以下のものを用意してください。

  • Ubuntu を実行しているサーバー (24.04 または 22.04 を推奨)。
  • sudo 権限アカウントを使用してサーバーに SSH アクセスします。
  • コマンドラインの使用に関する基本的な知識。
  • デプロイ準備が整った Laravel プロジェクト。

ステップ1: サーバーを更新する

最初のステップは、現在のシステム パッケージが最新であることを確認することです。パッケージを更新するには、SSH を使用してサーバーに接続し、次のコマンドを実行します。


sudo apt update
sudo apt upgrade -y

ステップ2: 必要なソフトウェアをインストールする

Laravel は PHP プログラミング言語で書かれています。Web 上で提供するには、Apache などの Web サーバーが必要です。データを永続的に保存するには、MySQL などのデータベースが必要です。全体として、Laravel アプリケーションを実行するために必要なソフトウェアをインストールする必要があります。これには、Apache、MySQL、PHP、およびその他のツールが含まれます。

  1. Apache をインストールするには、次のコマンドを実行します。
    
    sudo apt install apache2 -y
    
  2. MySQL データベースをインストールするには、次のコマンドを実行します。
    
    sudo apt install mysql-server -y
    
  3. PHP と追加の PHP モジュールをインストールするには、次のコマンドを実行します。
    
    sudo apt install php libapache2-mod-php php-mysql php-xml php-mbstring php-mcrypt php-curl php-zip -y
    

ステップ3: MySQLの設定

MySQL サーバーを初めてインストールした後、次のコマンドを実行して MySQL セットアップ ウィザードを起動する必要があります。


sudo mysql_secure_installation

画面の指示に従って、MySQL インストールを保護します。次に、MySQL にログインして、Laravel アプリケーション用のデータベースを作成します。


sudo mysql -u root -p

MySQL シェル内で、次のコマンドを実行してデータベースとユーザーを作成します。


CREATE DATABASE laravel_app;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON laravel_app.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

ステップ4: Apacheサーバーをセットアップする

Laravel アプリケーションを提供するには、Apache を設定する必要があります。まず、mod_rewrite モジュールを有効にします。


sudo a2enmod rewrite

次に、Laravel サイト用の新しい Apache 設定ファイルを作成します。


sudo nano /etc/apache2/sites-available/laravel.conf

ファイルに次の内容を追加します。



    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/laravel/public

    
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

ファイルを保存して閉じます。次に、新しいサイトを有効にして Apache を再起動します。


sudo a2ensite laravel.conf
sudo systemctl restart apache2

ステップ5: Laravelアプリケーションをデプロイする

それでは、Laravel アプリケーションをデプロイしましょう。まず、Laravel プロジェクトをサーバーの /var/www/laravel ディレクトリにアップロードします。SCP、SFTP、またはその他のお好みの方法を使用できます。

ファイルがサーバー上に置かれたら、プロジェクト ディレクトリに移動して必要な依存関係をインストールします。


cd /var/www/laravel
composer install

次に、ストレージ ディレクトリとキャッシュ ディレクトリに適切な権限を設定します。


sudo chown -R www-data:www-data storage
sudo chown -R www-data:www-data bootstrap/cache

ステップ6: 環境変数を設定する

Laravel は、構成設定を保存するために .env ファイルを使用します。.env ファイル内のデータベース設定を、先ほど作成したデータベースとユーザーと一致するように更新してください。


DB_DATABASE=laravel_app
DB_USERNAME=laravel_user
DB_PASSWORD=your_password

ステップ7: アプリケーションキーを生成する

最後に、Laravel アプリケーションのアプリケーション キーを生成します。


php artisan key:generate

ステップ8: SSL証明書を設定する

Laravel アプリケーションを保護するには、Let’s Encrypt を使用して無料の SSL 証明書を設定できます。次の手順に従います。

Certbot をインストールします。


sudo apt install certbot python3-certbot-apache -y

SSL 証明書を取得してインストールします。


sudo certbot --apache

画面の指示に従ってください。Certbot はサイトの SSL を自動的に構成し、必要に応じて証明書を更新します。

証明書の更新プロセスをテストします。


sudo certbot renew --dry-run

結論

これで完了です。これで、Laravel アプリケーションが Ubuntu サーバー上で稼働し、Let’s Encrypt を使用して SSL が設定されているはずです。Web ブラウザーでサーバーの IP アドレスにアクセスして、アプリケーションがライブで安全に動作していることを確認してください。このガイドでは、サーバーの更新、必要なソフトウェアのインストール、Laravel アプリのデプロイ、SSL の設定など、すべてを説明しました。これで、Laravel アプリを世界に公開する準備が整いました。

Hope this help!

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *