トップ / 応用の紹介
Vercelで本格的に公開する
これは読むだけのページです何ができるようになるか
- pushするだけで公開が自動更新される状態が作れるようになる
- データベースやログイン機能を使うアプリも公開できるようになる
- 秘密の値(APIキー)を本番でどう渡すかが分かるようになる
👉 このページは「Surgeでは足りなくなってから読めばいい」ページです。今は、次の段階があると知っていれば十分です。
どう繋がるのか
手順書で使ったSurgeは、完成したHTMLをそのまま配るサービスです。速くて簡単ですが、できないことがあります。
- 誰かが送信したデータを保存する
- ログインした人にだけ違う画面を見せる
- 裏側でAPIキーを使って外部サービスを呼ぶ
これらは「見る人ごとに中身が変わる」動きです。配るだけのSurgeでは扱えません。そこで登場するのが Vercel です。
Vercelは、GitHubと繋がります。git push をすると、Vercelがそれを検知して自動で公開まで済ませます。Surgeのように毎回コマンドを打つ必要がなくなります。
つまり、こういう住み分けです。
| Surge | Vercel | |
|---|---|---|
| 得意なこと | 完成したページを配る | 動きのあるアプリを動かす |
| 公開の操作 | 毎回コマンドを打つ | pushすると自動 |
| GitHub | 要らない | 繋いで使う |
| 向いている段階 | 最初の作品・図解・紹介ページ | データベースやログインを使い始めてから |
実際にやるとどんな感じか
Vercelにサインアップし、GitHubのリポジトリを選ぶと、あとは自動です。
git push
これだけで、Vercelがビルド(本番用に組み立てる工程)を実行し、URLを更新します。手元で確認してからpushする、という流れはGitHubと同じです。
そしてもう1つ、必ず出会う論点があります。秘密の値の置き場所です。
.env.local はGitHubに上げません。Vercelが受け取れるのはGitHubにある中身だけです。つまり本番には .env.local が存在しません。
これが「ローカルでは動くのに本番で動かない」の最大の原因です。
本番用の値は、Vercelのプロジェクト画面(Settings → Environment Variables)に、ローカルと同じ名前で登録します。登録しただけでは反映されないので、もう一度pushするか、画面から再デプロイしてください。環境変数はビルドの時に読み込まれるためです。
始めるなら
「置き場所が2つある」ことさえ覚えていれば、その日に困りません。データベース(Supabase)に進む時、この知識が前提になります。
📖 出てきた言葉
本番環境production / ホンバンカンキョウ
実際のユーザーがURLで触る側の環境。手元の開発用(ローカル)と対にして使う言葉。 「ローカルでは動くのに本番では動かない」を切り分ける第一歩が、この2つの区別。
ビルドbuild / ビルド
書いたコードを、本番で動く形へ組み立て直す工程。Vercelはpushのたびにこれを実行する。 環境変数の多くはビルド時に読み込まれる。だから登録後に再デプロイが要る、と理解できる。
環境変数environment variable / カンキョウヘンスウ
プログラムの外側から渡す設定値。APIキーのような、コードに直接書きたくないものを入れる。 ローカルと本番で置き場所が別。ここを取り違えると本番だけ動かない。