Vercelでデプロイをロールバックする

1 min read読了の目安(約800字

ググってもほとんど情報がヒットしなかったので記事にします。Vercelでデプロイをした後に旧バージョンにロールバック(rollback)したい場合、2021年1月時点ではCLIから操作を行う必要があります。

本来はソースコードを修正したうえで、GitHubリポジトリ経由 もしくは CLIでデプロイし直した方が良いのですが、「すぐにロールバックしたい」というようなケースもあると思うので。

1. 戻したいデプロイの名前を調べる

Vercelのダッシュボードに入り、デプロイ一覧(Deployments)を開きます。以下のようにデプロイ一覧が表示されると思います。

↑ オレンジの枠線が引かれた部分がDEPLOYMENTの名前になります。例えば、zenn-example-12345.vercel.appにロールバックしたいとします。

2. CLIからドメインをあてる

本番環境のドメインがzenn.devの場合、zenn.devへのリクエストがzenn-example-12345.vercel.appへ流れるように設定をすれば、結果的にzenn-example-12345.vercel.appへとロールバックしたことになります。

この設定は$ vercel alias デプロイ名 ドメインで可能です。具体的には以下のようなコマンドを実行します。

$ vercel alias zenn-example-12345.vercel.app zenn.dev

これで旧デプロイへのロールバックが完了します。

ちなみに、Vercelのチームプランを使っているような場合には、$ vercel switchにより、チーム <=> 個人のアカウントの切り替えができます。