coolify-deploy について
coolify-deploy は、Coolify でアプリケーションをデプロイするためのスキルです。プロジェクト別のビルド設定、ヘルスチェック、環境変数、デプロイ監視、ロールバックを扱います。
主な機能
- 01ビルド・起動コマンドの案内
- 02デプロイ前チェックリスト
- 03ヘルスチェック設定
- 04環境変数の設定案内
- 05デプロイ監視とロールバック
活用シーン
- 01静的サイトのデプロイ準備
- 02アプリケーションコンテナの設定
- 03デプロイの検証とロールバック
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ v1truv1us/ ai-eng-system --skill coolify-deployインストール後、Claude Code で/coolify-deployを入力して読み込まれたか確認します。
同梱ファイルevals/evals.json
詳細
既定の出力:結果、ブロッカー、必要な証拠のみを返します。前置き、作業過程の説明、繰り返しのコンテキスト、自信度スコア、追加の提案は省略します。必要な成果物やスキーマがある場合を除き、箇条書きは最大5項目にしてください。
Coolify デプロイメントスキル
体系的なアプローチ
プロジェクトの種類
静的サイト(Astro、Svelte、Hugo、Jekyll)
Build Command: [your build tool] build
Output Directory: dist (or public, _site, build — check your framework)
アプリケーションコンテナ(任意のランタイム)
Build Command: [install dependencies] && [build]
Start Command: [your runtime] [entry point]
Port: [your app port]
言語別の例:
- Node.js:
npm run build/node dist/index.js - Python:
pip install -r requirements.txt/uvicorn app.main:app - Go:
go build -o app/./app - Rust:
cargo build --release/./target/release/app
Docker ベースのアプリケーション
Dockerfile: ./Dockerfile
Port: [your container port]
デプロイメントチェックリスト
デプロイ前
- ローカルですべてのテストに合格している
- Coolify ダッシュボードで環境変数を設定している
- ヘルスチェックエンドポイントを確認している(
/health) - データベースのマイグレーションを確認している(該当する場合)
- ロールバック計画を文書化している
デプロイ中
- エラーなしでビルドが成功する
- デプロイ後にヘルスチェックが成功する
- ログにエラーの急増がない
- 応答時間が通常の範囲内である
デプロイ後
- 重要な経路のスモークテストを実施する
- 15分間、エラー率を監視する
- データベースのマイグレーションが完了したことを確認する
- デプロイメントログを更新する
環境変数
Coolify ダッシュボードの「環境変数」で次の項目を設定します。
ENVIRONMENT=production
PORT=3000
DATABASE_URL=postgresql://user:pass@host:5432/dbname
# Add your app-specific variables
ヘルスチェックの設定
アプリケーションに /health エンドポイントを追加します。言語別の例:
Python(Flask):
@app.route('/health')
def health():
return jsonify(status='ok', timestamp=datetime.utcnow().isoformat())
Go:
http.HandleFunc("/health", func(w http.ResponseWriter, r *http.Request) {
json.NewEncoder(w).Encode(map[string]string{"status": "ok"})
})
Node.js(Express):
app.get('/health', (req, res) => {
res.status(200).json({ status: 'ok' });
});
Coolify で次のように設定します。
- ヘルスチェック URL:
/health - ヘルスチェック間隔:30秒
Nixpacks の設定
ビルドの自動検出を有効にするには、nixpacks.toml を追加します。Coolify はほとんどのランタイムを自動検出しますが、カスタマイズも可能です。
[phases.setup]
nixPkgs = ["<your-runtime-package>"]
[phases.install]
cmds = ["<install-command>"]
[phases.build]
cmds = ["<build-command>"]
[start]
cmd = "<start-command>"
使用するランタイムに応じた設定については、Nixpacks のドキュメントを参照してください。
ロールバック
デプロイに失敗した場合:
- Coolify ダッシュボードで「Deployments」に移動します
- 最後に正常に動作したデプロイメントを探します
- 動作していたバージョンの「Redeploy」をクリックします
- ヘルスチェックが成功することを確認します
または、CLI から実行します。
coolify deployments redeploy --applicationUuid "app-uuid" --deploymentUuid "last-good-deployment-uuid"
正当化を防ぐための表
| 言い訳 | 反論 |
|---|---|
| 「デプロイ前のチェックリストは省略します。小さな変更にすぎません」 | 小さな変更でも本番環境に障害をもたらします。チェックリストを使えば、思い込みでは見落とす点を確認できます。 |
| 「ヘルスチェックは任意です」 | ヘルスチェックがなければ、デプロイが成功したことを確認できません。 |
| 「環境変数はデプロイ後に設定します」 | 環境変数がないと起動に失敗します。デプロイ前に設定してください。 |
| 「ロールバックは複雑すぎるので、壊れたらそのまま修正します」 | プレッシャーの中で修正を重ねるほうが、問題なくロールバックするよりリスクが高くなります。 |
| 「デプロイ後の監視は必要ありません」 | デプロイ後の最初の15分は、問題が表面化しやすい時間です。積極的に監視してください。 |
コメント
Markdown 対応