6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Next.js✖️Tigris✖️Vercel で簡単にTODOアプリを公開

Last updated at Posted at 2023-04-25

記事の概要

  • ①Tigrisとは
  • ②Tigrisログイン〜プロジェクト作成
  • ③Next.jsのプロジェクト作成〜ローカル確認
  • ④Vercelにデプロイ

今回はNext.jsにTigrisでMongoDBをDBとして用意し、TODOアプリをVercelで公開するところまでを行っていきたいと思います。
Vercelで公開したTODOアプリデモ
Tigrisの公式チュートリアルを見て行っているのでTODOアプリ自体は公式サイトに載っているリポジトリをクローンしてます。
Tigrisの公式チュートリアルはこちら

①Tigrisとは

Tigris は、高性能アプリケーションの構築を簡素化するために設計されたサーバーレス NoSQL データベースおよび検索プラットフォームです。
Tigris を使用すると、小売および e コマース プラットフォームから金融アプリケーションやイベント ストア、ベクトル検索および推奨エンジンなど、幅広いアプリケーションをすばやく簡単に構築できます。Tigris は、複数のツールを管理、操作、および同期するためのインフラストラクチャの複雑さを解消し、代わりに優れたアプリケーションの構築に集中できるようにします。

Tigris Documentation

Tigrisの公式ドキュメントにはこのように記載してありました。
Tigrisの全体像は正直まだ理解していないのですが、要はDBとしてMongoDBを使っているBaaS(Backend as a Service)みたいなものだと思います。下記の記事で取り上げたSupabaseのようなものだと思います。
Next.jsにDB追加してVercelで公開してみた①

②Tigrisログイン〜プロジェクト作成

Tigrisログイン

Tigrisの公式ドキュメントの右上の「Sign Up」からTigrisに登録していきます
スクリーンショット 2023-04-25 23.03.59.png
「Sign Up」を選択すると下記の登録画面が出るので好きな方法で登録して下さい
スクリーンショット 2023-04-25 23.04.50.png

Tigrisプロジェクト作成

登録が完了すると「DashBoard」画面が表示されるかと思いますので、「Create a new project」を選択します
スクリーンショット 2023-04-25 23.06.01.png
「Create a new project」を選択後、プロジェクト名を入力して下さい
スクリーンショット 2023-04-25 23.06.43.png

③Next.jsのプロジェクト作成〜ローカル確認

Next.jsのプロジェクト作成

Tigrisプロジェクトが作成できたら、左側メニュー内の「Get Started」を選択し「NEXT.js」の部分をコピーします
スクリーンショット 2023-04-25 22.17.19.png
コピーしたらプロジェクトを作成したい場所でターミナルを開きコピーしたコマンドを実行して下さい

// 例として載せています
npx create-tigris-app@latest --project PRE_Project --client-id XXXXXXXX --client-secret XXXXXXXXXXXXX --example nextjs-api-routes

ローカル確認

Next.jsのプロジェクト作成ができたら、作成したプロジェクトに移動して下記のコマンドを実行します

npm run dev

実行後http://localhost:3000/を開くと画像のように表示されるかと思います
スクリーンショット 2023-04-25 22.24.07.png
これだけでDB側もTigrisでホスティングできているので実際に動かしてもDB登録されていることが確認できます
実際にTODOを追加したりして確認してみて下さい
tigris.gif
Tigris側では左側メニュー内の「Database」の「Data Explorer」を選択するとデータの確認ができます
スクリーンショット 2023-04-25 22.34.03.png

④Vercelにデプロイ

ローカルでの確認ができたのでVercelでデプロイしてアプリを公開できるようにしていきます

一部ソースの修正

このままデプロイするとデプロイが失敗するため以下の部分の修正をします
pages/_document.tsxcrossOrigin={"crossorigin"}crossOrigin={undefined}に修正する。
コメントアウトでも問題ないです。

pages/_document.tsx
import { Html, Head, Main, NextScript } from "next/document";
import React from "react";

export default function Document() {
  return (
    <Html>
      <Head>
        <link rel="preconnect" href="https://fonts.googleapis.com" />
        <link
          rel="preconnect"
          href="https://fonts.gstatic.com"
          // ここを修正します
          crossOrigin={undefined}
        />
        <link
          href="https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600&display=swap"
          rel="stylesheet"
        />
        <link rel="icon" href="/favicon.ico" />
      </Head>
      <body>
        <Main />
        <NextScript />
      </body>
    </Html>
  );
}

Vercelにデプロイ

Vercelのプロジェクト作成画面から今回作成したリポジトリを選択
スクリーンショット 2023-04-25 22.23.02.png
選択後プロジェクト名の入力と環境変数の追加を行う。

  • Project name: Vercelのプロジェクト名(なんでも問題ないです)
  • TIGRIS_URI: .env に記載されているものと同じ値
  • TIGRIS_PROJECT: .env に記載されているものと同じ値
  • TIGRIS_CLIENT_ID: .env に記載されているものと同じ値
  • TIGRIS_CLIENT_SECRET: .env に記載されているものと同じ値
  • TIGRIS_DB_BRANCH: .env に記載されているものと同じ値

Next.jsのプロジェクト作成を行った際に作成されている.envファイルに記載されている内容をVercelで設定します
入力後「Deploy」を選択して下さい
スクリーンショット 2023-04-25 22.35.46.png
Deployが成功すると画像のような画面が表示されるかと思うので右上の「Visit」で公開されたページを確認してみて下さい
スクリーンショット 2023-04-25 22.42.15.png
そうすると公開されたURLでTODOアプリが見れつかと思います
スクリーンショット 2023-04-25 23.50.43.png

参考サイトや記事

Tigrisの公式チュートリアル
Tigrisの公式TERNスタックの紹介
TERNスタックをざっくりと説明してみる

6
3
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
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?