筆者の技術レベル
初めてWebアプリを作ります。
「プロになるためのWeb技術入門」、「1冊でキッチリ身につく、サーバーの基本としくみ」や他にもいくつかWebアプリに関する本や記事は読んできました。
今回のWebアプリは「現場で使えるDjango REST Frameworkの教科書」を参考して作っています。
筆者のアプリ公開環境の簡単な説明
サーバーはVPSを使って、UbuntuでNginx,gunicorn,postgresqlを使ってDjangoアプリケーションを公開しています。
教えていただきたいこと
vue-cliを使うのではなくvueをCDN経由で利用する方法があることは知っていますが、アプリ公開後に継続的に機能追加や修正を行って規模を拡大していきたいのでCDNは使わないほうが良いという判断をしました。
自分で調べたところでは3つ方法が見つかりました。
1つ目は、Amazon S3にビルドしたファイルを置く。
2つ目は、本番環境でフロントエンドのビルド環境を整えてビルドしたファイルをNginxで指定したディレクトリに置く。
3つ目は、ローカル環境でビルドしたファイルを本番環境のサーバーに送る。
1つ目の方法に関しては、今回は出来るだけ安い費用でアプリを公開することを考えて、サーバー1つに全ての機能を集約したいので候補から外しました。
2つ目の方法も試しましたがビルドが上手くいかず、エラーを見るとビルドに必要なサーバーのメモリが足りないようでした。
また、ローカル環境でビルドまでできるのにわざわざ本番のサーバーで環境構築してビルドするということがただ手間がかかるだけの方法のような気がしてあんまりいい方法じゃないかなと思っていて中々前向きになれません。
なので今回は3つ目の方法として、ローカル環境でビルドしたファイルをGithubを経由して本番環境に持ってくるというやり方を取っています。
これを踏まえて、皆さんにお聞きしたいことは
今の方法(github経由で静的ファイルを持ってくる)が合っているか、また良くない場合はどういう方法が考えられるか
です。
合わせて
実際の開発現場ではフロントエンド(Vue,Reactなど)でビルドしてできた静的ファイルをどういう方法で配信するのが一般的か、
も教えていただけると嬉しいです。
あなたの回答
tips
プレビュー