Laravel Cloud使ってみた!サンプルプロトタイプを「爆速」でデプロイしました

Laravel

Laravel Cloudってご存じですか?Laravel公式が提供するフルマネージドのクラウドデプロイプラットフォームです。サーバーの設定やスケーリングをLaravel側が全部やってくれる、Laravel専用のホスティングサービスです。

GitHubにプッシュするだけでデプロイが完了するので、手軽にLaravelアプリを本番公開できます。

気になるけど、これまで使う機会がなく。

ただこのたび、「とにかくさくっとプロトタイプをデプロイしたい」案件があり、使ってみました♪

気になる方見てください。ちなみにお値段は従量課金制*で、今回のような使い方ならかなり少なくできます。

*月額制もあります。

Laravel Cloud使ってみた!サンプルプロトタイプを「爆速」でデプロイしました

今回はGitHubにプッシュしたリポジトリをデプロイします。

準備編

準備として、デプロイしたいWebアプリをGitHubにプッシュしておきます。

また、こちらでLaravel Cloudアカウントを作成します。

最初にクレジットカードの登録が必要です。

プロジェクト作成

Laravel Cloud内でプロジェクトを作成し、GitHubリポジトリを選択してデプロイします。

なお public/build フォルダは .gitignore から外しておきましょう。

データベースについて

今回は本番プロジェクトではないのでスピードとコストを最優先し、「SQLite」を選択しました。

.sqlite ファイルはGitから無視(Ignore)される設定になっています。 下記コマンドを実行して、Gitの管理に含め、クラウド上へ送り出しました。

このあとファイルをプッシュ→Laravel Cloud反映。

さらに、Settings/General/Custom environment variables(環境変数)の設定を開きます。

下記のようなコードを追加しました。

Saveしてデプロイを実行。

マイグレーションの実行

Commandsタブにて必要なコマンドを実行します。今回はマイグレーションを強制実行しました。

なぜ–force(強制)をつけるかですが、Laravel CloudはデフォルトでAPP_ENV=productionに設定されています。

本番環境でのマイグレーションはデータ破壊を防ぐためにLaravelが確認プロンプトを表示しますが、Commandsタブは対話操作に対応していないため、プロンプトが出た時点でコマンドがキャンセルされてしまいます。この確認を読み飛ばし、強制実行するために–forceをつけています。

詳細は、下記公式マニュアルご参照ください。

ログをみてエラー修正

プロジェクト名の下に表示されるURLをクリックして、ブラウザに表示します。500エラーなどあった場合は、Logsよりログを確認して修正します。

⚠️ SQLiteに関する注意点

なおSQLiteの利用にはご留意点があります。公式マニュアルには、下記のようにあります。

SQLiteは開発環境や軽量アプリケーションで人気の選択肢ですが、Laravel Cloudの本番環境ではサポートされていません

https://cloud.laravel.com/docs/knowledge-base/sqlite

デプロイしなおさない限りデータは保持されますが、再デプロイのたびにデータはリセットされます。今回はプロトタイプの動作確認が目的なので問題ありませんが、本番用途でのSQLite使用は公式非推奨です。

本番運用を視野に入れるなら、最初からServerless PostgresやMySQLを選択することをおすすめします。データベースをちゃんと作るには、「Resources」より設定が必要です。

コストを抑えたい方へ

ハイバネーション(Hibernation) を有効にすることでコストを大幅に下げられます。

ハイバネーションとは、リクエストがない間はアプリが自動的にスリープし、その間のコンピュート費用が発生しない。つまりお財布にやさしい仕組みです。

今回試したところ、現在は最初からハイバネーションが有効になっており、デフォルトで5分間リクエストがないとスリープする設定になっていました。

設定変わるかもなので、ご自身でご確認くださいね

設定は Environment → App cluster から確認・変更できます。

実際に5分後にハイバネーションモードになりましたが、Webアプリを開くと約5秒ほどで利用できるようになりました。今回のようなプロトタイプではあまり不便は感じませんが、Webアプリによっては設定変更が必要かもしれません。

また、SQLiteを使っている場合はハイバネーションからの復帰時にもデータが消えるため注意してください。プラント価格は下記公式ドキュメントご覧ください。

さいごに

ざっくりですが、Laravel Cloud使ってみたこと記録しました。普段はエックスサーバーを使うことが多く、また案件に合わせて他のホスティングサービスも利用します。



本番で使うときは、引き続きそうする可能性が高いですが、ただ、Laravelをデプロイするには、わりと手順が面倒なのは事実。今回はさくっとできて助かりました。

今後も時々使っていき、慣れてきたら、なにかちゃんとしたWebアプリを実装するときに使ってみたいと感じました。

また色々試して、役立つと感じたものあればコンテンツにします♪良かったらYoutubeX、フォローしてくださいね。

 

 

 

 

Laravel Laravelとテスト Laravelバージョンアップ・ニュース デプロイ・エックスサーバー系

【Laravelの教科書・プレゼント】

Junko
Laravelの使い方を覚えたい!と思ったら、ぜひ、役立ててほしいです。 基礎編は無料でプレゼント中です♪
ひつじプログラマ
会員制サイトをいちから作っていくよ。ボタンをクリックして詳細を見てね。
Laravelの教科書の詳細を見る

最新版テキストに加え、Laravel8版~Laravel11版もご用意しています♪

【無料プレゼント】

「LaravelでWebアプリをいちから作れるようになりたい!」

そんなLaravel初心者のあなたへ【Laravelの教科書】基礎編プレゼント中! 会員制フォーラムサイトを学習しながら作れます。

詳細はこちらをクリック

最新版テキストに加え、Laravel8版からLaravel11版もご用意しています♪

Laravelの本を書きました。


ひつじが目印♪

Laravelの使い方を分かりやすく解説した書籍を出版しました。 ご好評につき、最新版に対応した改訂版を2025年7月に発売
書店やAmazon等のオンラインショップにて販売中です。 詳しくは下記ボタンをクリック

書籍の詳細を見てみる

Laravelの本書きました。


ひつじが目印♪
クリックするとamazonページへ。

Laravelの使い方を分かりやすく解説した書籍を出版しました。ご好評につき最新版対応の改訂版発売。書店やAmazon等のオンラインショップにて販売中です。

書籍の詳細を見てみる
Twitter始めました。
40代からプログラミング!
タイトルとURLをコピーしました