0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MERNスタックアプリをVercelにデプロイしてみた

Last updated at Posted at 2024-09-13

こんにちは
エンジニア転職のために、MERNスタックアプリを作りデプロイしました。
いろいろ考えた結果Vercelにデプロイしました。失敗したことも含めて皆様に共有させえていただきます。
今ポートフォリオを作って、無料でデプロイしようと考えていらっしゃる方には特に参考になるかと思います。

Vercelにデプロイしようと思った理由

結論、無料だったからです。
昔は、AWSのFC2やHerokuという選択があり、それらにデプロイをしていました。
しかし、AWSの無料枠は使い切っているようで、、、さらにいつのまにかHerokuは有料化になってしまい、、、、

Next.jsをお使いの方はよくご存じのVercelにデプロイしようということになりました。
※Vercelの前にRailwayというサービスも使いましたがデプロイがうまく行かず、、、Vercelにしました。

Vercelは↓こちら

Vercelへのデプロイのやり方

MERNスタックのブルスタックアプリのフォルダ構成は下記です。
 frontend
  └フロントエンドのフォルダ構成
 Backend
  └バックエンドのフォルダ構成

Vercelでfrontendをデプロイして、そのあとに、backendを別プロジェクトをデプロイします。

1、Vercelで新しいプロジェクトを作成します。
image.png

2、GitHubのプロジェクトを選んだあと、frontendとbackendに分けてビルトしていきます。
image.png

3、
image.png

ここで、最初にfrontendを選択しデプロイします。

frontendと同じように、次に、Backendの新しいプロジェクトを選んでビルドします。

※backendのみ必要なvercel.jsonについて
backendのルートフォルダに「vercel.json」というファイルを作成し下記の通り記述してデプロイする必要があります。

{
  "version": 2,
  "builds": [
    {
      "src": "server.js",
      "use": "@vercel/node"
    }
  ],
  "routes": [
    {
      "src": "/api/(.*)",
      "dest": "/server.js"
    }
  ]
}

以上でデプロイができました。
※frontendにはvercel.jsonは必要ありません、

このような形で、frontendとbackendのデプロイができます。
mongoDBは「MongoDB Atlas」を使用しました。

全体の構成はこんな感じです。

image.png

以上、Vercelへのデプロイ方法でした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?