フリーランス 技術調査ブログ

フリーランス/エンジニア Ruby Python Nodejs Vuejs React Dockerなどの調査技術調査の備忘録

AWS Elastic BeanstalkでLaravelを動作させる

はじめに

  • EBでLaravelを動作させる機会があったので、下記にまとめました。

ElasticBeanstalk アプリケーション作成

  • 「Create Application」ボタンをクリックする

  • 「アプリケーション名」を設定する

  • PHP、ファイルアップロードを選択する

  • アプリケーションの作成ボタンをクリックする

  • アプリケーションの作成ボタンをクリックすると数分かかるので、しばらく待つ

  • ドキュメントのルートに「/public」を指定する

アップロード用のファイルを作成する

  • アプリケーションフォルダのルート直下で下記のコマンドを実行する
zip ../laravel-default.zip -r * .[^.]* -x "vendor/*" "docker/*"

デプロイ時にマイグレーションを走らせたい場合

  • .platform/hooks/postdeploy/migrate.shファイルを作成し下記の内容を記述する。
sudo chmod -R 777 storage/
sudo chmod -R 777 bootstrap/cache/
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan migrate

Nginxの設定を変更したい場合

  • .platform/nginx/conf.d/elasticbeanstalk/proxy.confファイルを作成し下記の記述を追加する。
client_max_body_size 5000M;

PHP.iniの設定を変更したい場合

  • .ebextensions/change_upload_size.configファイルを作成し下記の記述を追加する
files:
    "/etc/php.d/99uploadsize.ini":
        mode: "000644"
        owner: root
        group: root
        content: |
            upload_max_filesize = 1024M
            post_max_size = 1024M
commands:
    remove_old_ini:
        command: "rm -f /etc/php.d/99uploadsize.ini.bak"