👌

fly.ioにLaravelアプリケーションをデプロイする

2023/02/26に公開

fly.ioへのアプリケーションのデプロイ手順を説明します。

内容は公式のLaravelアプリケーションのデプロイ手順、Laravel on Fly.ioに準じます。

手順

最初にfly.ioにアカウントを作成します。サインアップは下記URLから行えます。
https://fly.io/app/sign-up

GitHubのアカウントから登録すると、30秒くらいで簡単にサインインできます。

次にflyのコマンドラインツールであるflyctlをインストールします。
Macを前提にしていますが、その他の環境でのインストール方法は公式のドキュメントを適宜参照してください.

brew install flyctl

Laravelをセットアップするためにcomposerもインストールします。

brew install composer

Laravelアプリケーションを作成します。すでに既存のLaravelアプリケーションをお持ちの場合は下記の手順は飛ばしてください。

composer create-project laravel/laravel fly-laravel
cd fly-laravel
php artisan serve # 実行して確認

fly上にデプロイ先となるアプリケーションを作ります。

fly launch

上記を実行するとコマンドライン上で対話式でいくつか質問されるので、自分に合った回答を入力していきます。

Creating app in /Users/ootsukanoboru/ws/ptojects/srp/fly-laravel
Scanning source code
Detected a Laravel app
automatically selected personal organization: OtsukaNoboru
Some regions require a paid plan (fra, maa).
See https://fly.io/plans to set up a plan.

? Choose a region for deployment:  [Use arrows to move, type to filter]

最初にアプリケーション名を入力します。ここではlaravel-on-flyとします。

  Hong Kong, Hong Kong (hkg)
  Ashburn, Virginia (US) (iad)
  Johannesburg, South Africa (jnb)
  Los Angeles, California (US) (lax)
  London, United Kingdom (lhr)
  Madrid, Spain (mad)
  Miami, Florida (US) (mia)
> Tokyo, Japan (nrt) 
  Chicago, Illinois (US) (ord)
  Bucharest, Romania (otp)
  Querétaro, Mexico (qro)
  Santiago, Chile (scl)
  Seattle, Washington (US) (sea)
  Singapore, Singapore (sin)
  San Jose, California (US) (sjc)

次にリージョンを聞かれるのでTokyo, Japanを選択します。

? Would you like to deploy now? Yes

すぐにデプロイしたいのでyと入力します。

以上でfly上にlaravelアプリケーションがデプロイされます。

完了したら実際にブラウザで開いて確認しましょう。
下記コマンドでデプロイされたアプリケーションを開くことができます。

fly open

正常にデプロイできていたら下記の画面が表示されるはずです。

補足事項

fly launchコマンドを実行すると、いくつかのファイルが追加されます。

追加されるものは次のとおりです。

  • Dockerfile - すぐに実行されるコンテナー イメージを構築するために使用されます。
  • .dockerignore - 特定のファイルがリポジトリに入らないようにするために使用されます
  • fly.toml - Fly でのホスティングに固有の構成
  • .fly(以前の docker) - コンテナーで Nginx/PHP を実行するための構成ファイルを含むディレクトリ

Discussion