コース一覧
Next.js公開設計:SEO・画像最適化・デプロイ
マネージドへ公開

Next.js公開設計:SEO・画像最適化・デプロイ

metadata、動的metadata、OGP、Image、フォント最適化、本番ビルド、マネージド環境・自サーバーへの公開、公開前チェックを扱う全13レッスンの公開プロジェクトです。fleamaを検索・SNS・表示速度まで整え、公開URLを持つ本番サービスとして完成させます。

1
メタデータ・OGP・画像
01. メタデータ15分
02. 動的メタデータ15分
03. OGP15分
04. 画像最適化15分
05. フォント最適化15分
06. つくる - 検索とSNSに強く20分
07. 第7章クイズ15分
2
デプロイと総合制作
01. 本番ビルド15分
02. マネージドへ公開15分
03. 自サーバー案15分
04. 公開前チェック15分
05. 自由拡張20分
06. 完成と次のステップ10分

マネージドへ公開

マネージドに任せる範囲

公開はサーバーを借りることではない

昔は、公開すると言えばサーバーを1台借りて、そこに自分でファイルを置いて、動かし続ける役目まで引き受けることでした。今の Next.js は、その手前で済ませられます。ビルドから起動までを代わりにやってくれるサービスがいくつもあり、まとめてマネージドと呼ばれます。管理してもらう、という意味です。

どのサービスを使っても、やることの並びはほぼ同じです。名前を覚えるより、この並びを覚えたほうが役に立ちます。

4つの手順

1. リポジトリを繋ぐ。 GitHub に置いたコードを、サービス側から見えるようにします。ファイルを手で送るのではなく、リポジトリを指定するだけです。

2. 環境変数を入れる。 API の URL や鍵のように、コードに書き残したくないものを、サービスの画面から登録します。ここが最初のつまずきどころです。手元では .env.local に書いてあって動いていたものが、本番には入っていないので落ちる、というのがいちばんよくある失敗です。

3. ビルドされる。 サービスが npm run build を勝手に走らせます。前のレッスンで scripts の名前を変えなかったのは、このためです。型のエラーがあればここで止まり、ログに理由が出ます。

4. URL がもらえる。 ビルドが通ると公開用の URL が渡されます。あとはブラウザで開くだけです。独自ドメインを後から繋ぐこともできます。

2回目からは push だけ

一度繋いでしまえば、次からは GitHub に push するだけで、また 1 から 4 が自動で走ります。手で公開作業をする回はもうありません。壊れたら1つ前の状態に戻せる仕組みも、たいていのサービスが持っています。

環境変数はコードに含まれないので、何が要るのかを忘れがちです。値は書かず名前だけを並べた .env.example をリポジトリに置いておくと、自分にも他の人にも親切です。

演習

公開の手順を4つ書き出し、本番に登録する環境変数の名前を .env.example にまとめます。

ヒント

steps の1つは { action: "リポジトリを繋ぐ", result: "..." } の形です

.env.example は 名前=値 を1行ずつ並べたただのテキストです

envKeys は string の配列なので、名前だけを並べます

.env.example
layout.tsx
page.tsx
プレビュー

できているか

  • 手順を4つ以上書いている
  • リポジトリを繋ぐ手順がある
  • 環境変数を入れる手順がある
  • ビルドが走ることを書いている
  • URL がもらえるところまで書いている
  • 環境変数の名前を2つ以上並べている
  • .env.example に公開 URL の名前を書いている
  • .env.example に API の名前を書いている
エディタを読み込んでいます