mcpField
C
coolify-deploy

coolify-deploy

github.com/v1truv1usクラウド・DevOps8190 回インストール12 週間前に更新
リポジトリ

coolify-deploy について

coolify-deploy は、Coolify でアプリケーションをデプロイするためのスキルです。プロジェクト別のビルド設定、ヘルスチェック、環境変数、デプロイ監視、ロールバックを扱います。

主な機能

  1. 01ビルド・起動コマンドの案内
  2. 02デプロイ前チェックリスト
  3. 03ヘルスチェック設定
  4. 04環境変数の設定案内
  5. 05デプロイ監視とロールバック

活用シーン

  1. 01静的サイトのデプロイ準備
  2. 02アプリケーションコンテナの設定
  3. 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 のドキュメントを参照してください。

ロールバック

デプロイに失敗した場合:

  1. Coolify ダッシュボードで「Deployments」に移動します
  2. 最後に正常に動作したデプロイメントを探します
  3. 動作していたバージョンの「Redeploy」をクリックします
  4. ヘルスチェックが成功することを確認します

または、CLI から実行します。

coolify deployments redeploy --applicationUuid "app-uuid" --deploymentUuid "last-good-deployment-uuid"

正当化を防ぐための表

言い訳反論
「デプロイ前のチェックリストは省略します。小さな変更にすぎません」小さな変更でも本番環境に障害をもたらします。チェックリストを使えば、思い込みでは見落とす点を確認できます。
「ヘルスチェックは任意です」ヘルスチェックがなければ、デプロイが成功したことを確認できません。
「環境変数はデプロイ後に設定します」環境変数がないと起動に失敗します。デプロイ前に設定してください。
「ロールバックは複雑すぎるので、壊れたらそのまま修正します」プレッシャーの中で修正を重ねるほうが、問題なくロールバックするよりリスクが高くなります。
「デプロイ後の監視は必要ありません」デプロイ後の最初の15分は、問題が表面化しやすい時間です。積極的に監視してください。

コメント