技術

[AWS]1コインサーバーでLAMP(Laravel8)を使う<後編>

こんにちわ、どばきちです。

前回はLightsailのご紹介と実際にインスタンスの起動までを記載させて頂きました。今回はその続きとして、Laravelの導入についてやっていきたいと思います!

前編については以下の記事をご覧ください。

[AWS]1コインサーバーでLAMP(Laravel8)を使う<後編>

実践!

基本的なLaravelの導入手順としては以下の資料にまとまっていてそれを実施していくのみです!

Get Started With Laravel

導入手順のパターン確認

導入手順として2パターン(A, B)があるらしく、サーバー環境がどちらのパターンで対応する必要があるのかを特定するために以下のコマンドを実行しています。今回はパターンAでした。

bitnami@ip-xxx-xx-x-xx:~$ test ! -f "/opt/bitnami/common/bin/openssl" && echo "Approach A: Using system packages." || echo "Approach B: Self-contained installation."
Approach A: Using system packages.

Laravelのインストール

インストール

bitnami@ip-xxx-xx-x-xx:~$ composer global require laravel/installer
Changed current directory to /home/bitnami/.config/composer
Info from https://repo.packagist.org: #StandWithUkraine
Using version ^4.2 for laravel/installer
./composer.json has been created
Running composer update laravel/installer
Loading composer repositories with package information
Updating dependencies
(省略)

パスの追加

bitnami@ip-xxx-xx-x-xx:~$ echo 'PATH=$PATH:$HOME/.config/composer/vendor/bin' | sudo tee -a /etc/profile
PATH=$PATH:$HOME/.config/composer/vendor/bin
bitnami@ip-xxx-xx-x-xx:~$ export PATH=PATH=$PATH:$HOME/.config/composer/vendor/bin

アプリケーション配布先の用意

アプリケーション配布先のディレクトリ作成とディレクトリに対する権限の変更をします。

bitnami@ip-xxx-xx-x-xx:~$ sudo mkdir -p /opt/bitnami/projects
bitnami@ip-xxx-xx-x-xx:/opt/bitnami$ sudo chown $USER /opt/bitnami/projects

Laravelプロジェクトの作成

laravel newコマンドでプロジェクトを作成します。

bitnami@ip-xxx-xx-x-xx:/opt/bitnami$ cd /opt/bitnami/projects
bitnami@ip-xxx-xx-x-xx:/opt/bitnami/projects$ laravel new myapp

 _                               _
| |                             | |
| |     __ _ _ __ __ ___   _____| |
| |    / _` | '__/ _` \ \ / / _ \ |
| |___| (_| | | | (_| |\ V /  __/ |
|______\__,_|_|  \__,_| \_/ \___|_|

Creating a "laravel/laravel" project at "./myapp"
(省略)

デーモンからのアクセス権限を付与します。

bitnami@ip-xxx-xx-x-xx:/opt/bitnami/projects/myapp$ sudo chown daemon:daemon /opt/bitnami/projects/myapp/storage
bitnami@ip-xxx-xx-x-xx:/opt/bitnami/projects/myapp$ ls -l | grep storage
drwxr-xr-x  5 daemon  daemon    4096 Feb  8 14:36 storage

Webサーバ(apache)の設定

80番ポート(http)に対するバーチャルホスト設定をします。

bitnami@ip-xxx-xx-x-xx:/opt/bitnami/apache2/conf/vhosts$ cat myapp-vhost.conf
<VirtualHost 127.0.0.1:80 _default_:80>
  ServerAlias *
  DocumentRoot /opt/bitnami/projects/myapp/public
  <Directory "/opt/bitnami/projects/myapp/public">
    Options -Indexes +FollowSymLinks -MultiViews
    AllowOverride All
    Require all granted
  </Directory>
</VirtualHost>

443ポート(https)に対するバーチャルホスト設定もします。

bitnami@ip-xxx-xx-x-xx:/opt/bitnami/apache2/conf/vhosts$ cat myapp-https-vhost.conf
<VirtualHost 127.0.0.1:443 _default_:443>
  ServerAlias *
  DocumentRoot /opt/bitnami/projects/myapp/public
  SSLEngine on
  SSLCertificateFile "/opt/bitnami/apache2/conf/bitnami/certs/server.crt"
  SSLCertificateKeyFile "/opt/bitnami/apache2/conf/bitnami/certs/server.key"
  <Directory "/opt/bitnami/projects/myapp/public">
    Options -Indexes +FollowSymLinks -MultiViews
    AllowOverride All
    Require all granted
  </Directory>
</VirtualHost>

apacheを起動して設定を反映します。

bitnami@ip-172-26-2-75:/opt/bitnami/apache2/conf/vhosts$ sudo /opt/bitnami/ctlscript.sh restart apache
Restarted apache

ログ出力先に対する権限設定

上記ドキュメントには特に記載はないですがstorage配下の権限をしておく必要があります。

bitnami@ip-172-26-2-75:/opt/bitnami/projects/myapp$ sudo chmod -R 777 storage
bitnami@ip-172-26-2-75:/opt/bitnami/projects/myapp$ ls -l | grep storage
drwxrwxrwx 5 daemon daemon 4096 Feb 8 14:36 storage

疎通確認

上記諸々設定できると疎通確認ができます。Lightsailインスタンスのpublic ipにアクセスします。以下の様な画面が表示されればOKです!

LightsailのインストールからLaravelの導入までやってみました。VPSが月額500円未満固定で利用できるって改めてよき時代になったなって思いますね。どう活用するかは色々あるとは思いますが、そもそも個人では高くて利用を諦めていた人にとってもワンチャンあるのではないですかね。僕もLightsailを使って何をするか改めて考えてみたいなと思います。

それでは、また!

[AWS]1コインサーバーでLAMP(Laravel8)を使う<前編>前のページ

Twitterをはじめました次のページ

関連記事

  1. 技術

    2024年秋 プロジェクトマネージャー試験受験するど!

    こんにちわIT系のお仕事をされている方は知っている方も多いか…

  2. フリーランス

    iPhoneの領収書整理を自動化してみた話 構成編

    こんにちわ、どばきちです。前回はiPhoneの領収書…

  3. 技術

    Remix上でGSAPアニメーションを動かしてみた

    こんにちわ最近のWebサイトを見ているとかっこいいアニメーシ…

  4. 技術

    HHKBでMacにログインできるようになった!

    こんにちわ、どばきちです。普段僕はHappy Hac…

  5. 技術

    [docker][PHP]Laravelでステップ実行してみる

    こんにちわ、どばきちです。前回はdockerでLar…

  6. 技術

    warpではzshのbindkeyが使えない

    こんにちわ。iterm2からwarpへの乗り換えをし…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

2024年7月
1234567
891011121314
15161718192021
22232425262728
293031  
  1. フリーランス

    トレンドマイクロの評価の結果が出てた
  2. 雑談

    モニターの縦置きが案外良いです
  3. フリーランス

    フリーランスになる前の費用は開業費!
  4. フリーランス

    【悲報】社会保険の任意継続途中で終わった
  5. 技術

    ドメイン移管でwhoisのネームサーバー変更は必須だった
PAGE TOP