AIがどうデプロイと設定を組み上げるか
ここがvibe codingの真骨頂です。デプロイ設定は、まさにAIが得意とする、正確で、よく文書化された、定型コードの多い作業です。あなたが指示し、AIが書きます。
効果的なプロンプトはこんな響きです。
- 「このNodeアプリ用の
Dockerfileと、それをデプロイするRailwayの設定を追加して。」 - 「
mainへのプッシュごとにdist/フォルダをCloudflare PagesにデプロイするGitHub Actionsのワークフローを書いて。」 - 「サーバーレス関数でコールドスタートのタイムアウトが出ている — 何がおかしそうで、設定をどう直せばいい?」
AIがあなたのために生成するファイルの一例です — コードをプッシュするたびに静的サイトを自動で出荷するデプロイワークフローです。
# .github/workflows/deploy.yml
name: Deploy
on:
push:
branches: [main]
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci && npm run build
- name: Publish to Cloudflare Pages
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
command: pages deploy dist --project-name=my-app
この構文を暗記する必要はありません。必要なのは、これが何をするのかを認識することです。main へのプッシュごとに、コードをチェックアウトし、ビルドし、結果を公開します。何かが壊れたら、エラーをAIに貼り戻し、設定を直すよう頼みます。
多くのビルダーは、最初はGitHub Actionsのファイルをまるごと飛ばして、自分のターミナルからコマンド1つでデプロイします。初日に何かをライブで見るには、それがいちばん速い道であることがよくあります。同じCloudflare Pagesのデプロイを、コマンドラインからやるとこう見えます。
# install the CLI once
npm install -g wrangler
# build your site, then push the output folder live
npm run build
wrangler pages deploy dist --project-name=my-app
最初の実行ではブラウザ経由でのログインを求められ、その後はコマンド1つで済みます。トレードオフはシンプルです。ターミナルのコマンドは「今すぐ出荷」に最適で、GitHub Actionsのファイルは「ずっと自動で出荷」に最適です。たいていのプロジェクトは前者で始め、デプロイが日常になったら後者を足します。自分がどの段階にいるかに合うものをAIに頼みましょう。
本当の苦労を省くディレクションのコツをいくつか。
- AIに、行動する前に説明させる。 「設定を書く前に、このプロジェクトにどのホスティングタイプが合うか、そしてなぜかを教えて。」これで過剰設計を早めに捕まえられます。
- シークレットをコードの外に保つ。 APIキーやパスワードはプラットフォームの環境変数 / シークレットストアに入れ、コミットするファイルには決して入れません。上の
CF_API_TOKENのように、AIにシークレット参照を使わせましょう。 - 早くデプロイ、頻繁にデプロイ。 初日に「hello world」をライブにします。最初から動いているパイプラインは、ローンチ時に組み立てたものよりずっとデバッグしやすいです。
- ロールバックの段取りを先に尋ねる。 「このデプロイが壊れたら、動いていたバージョンにどう戻せばいい?」良いプラットフォームは、以前のデプロイをクリック1つの距離に置いてくれます。元に戻すボタンがあることを必要になる前に知っておけば、午前2時のパニックが肩をすくめるだけで済みます。