OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  coolify: 管理 Coolify 部署、应用、数据库及微服务

coolify: 管理 Coolify 部署、应用、数据库及微服务

 
  container ·  2026-02-02 08:06:12 · 3 次点击  · 0 条评论  

name: coolify
description: 通过 Coolify API 管理 Coolify 部署、应用、数据库和服务。当用户需要部署、启动、停止、重启或管理托管在 Coolify 上的应用时使用。
homepage: https://coolify.io
user-invocable: true
metadata: {"openclaw":{"emoji":"🚀","requires":{"bins":["node"],"env":["COOLIFY_TOKEN"]},"primaryEnv":"COOLIFY_TOKEN"}}


Coolify API 技能

通过 Coolify API 全面管理 Coolify 部署、应用、数据库、服务和基础设施。

使用场景

当用户需要执行以下操作时,请使用此技能:
- 将应用部署到 Coolify
- 管理应用生命周期(启动、停止、重启)
- 查看应用日志
- 创建和管理数据库(PostgreSQL、MySQL、MongoDB、Redis 等)
- 部署 Docker Compose 服务
- 管理服务器和基础设施
- 配置环境变量
- 触发和监控部署
- 管理 GitHub App 集成
- 配置 SSH 私钥

前置要求

  1. Coolify API 令牌 — 从 Coolify 仪表板生成:

    • 导航至 Keys & TokensAPI tokens
    • 创建具有适当权限(readwritedeploy)的令牌
    • 设置 COOLIFY_TOKEN 环境变量
  2. bash, curl, jq — 运行 bash 脚本所必需

  3. API 访问 — Coolify 云服务(app.coolify.io)或自托管实例

快速开始

基础命令

# 列出所有应用
{baseDir}/scripts/coolify applications list

# 获取应用详情
{baseDir}/scripts/coolify applications get --uuid abc-123

# 部署应用
{baseDir}/scripts/coolify deploy --uuid abc-123 --force

# 查看应用日志
{baseDir}/scripts/coolify applications logs --uuid abc-123

# 重启应用
{baseDir}/scripts/coolify applications restart --uuid abc-123

应用管理

列出应用

{baseDir}/scripts/coolify applications list

输出示例:

{
  "success": true,
  "data": [
    {
      "uuid": "abc-123",
      "name": "my-app",
      "status": "running",
      "fqdn": "https://app.example.com"
    }
  ],
  "count": 1
}

获取应用详情

{baseDir}/scripts/coolify applications get --uuid abc-123

应用生命周期管理

# 启动
{baseDir}/scripts/coolify applications start --uuid abc-123

# 停止
{baseDir}/scripts/coolify applications stop --uuid abc-123

# 重启
{baseDir}/scripts/coolify applications restart --uuid abc-123

查看日志

{baseDir}/scripts/coolify applications logs --uuid abc-123

环境变量管理

# 列出环境变量
{baseDir}/scripts/coolify applications envs list --uuid abc-123

# 创建环境变量
{baseDir}/scripts/coolify applications envs create \
  --uuid abc-123 \
  --key DATABASE_URL \
  --value "postgres://user:pass@host:5432/db" \
  --is-runtime true \
  --is-buildtime false

# 更新环境变量
{baseDir}/scripts/coolify applications envs update \
  --uuid abc-123 \
  --env-uuid env-456 \
  --value "new-value"

# 批量更新环境变量
{baseDir}/scripts/coolify applications envs bulk-update \
  --uuid abc-123 \
  --json '{"DATABASE_URL":"postgres://...","API_KEY":"..."}'

# 删除环境变量
{baseDir}/scripts/coolify applications envs delete \
  --uuid abc-123 \
  --env-uuid env-456

创建应用

# 公共 Git 仓库
{baseDir}/scripts/coolify applications create-public \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --git-repository "https://github.com/user/repo" \
  --git-branch main \
  --name "My App"

# 私有 GitHub App
{baseDir}/scripts/coolify applications create-private-github-app \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --github-app-uuid gh-789 \
  --git-repository "user/repo" \
  --git-branch main

# Dockerfile
{baseDir}/scripts/coolify applications create-dockerfile \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --dockerfile-location "./Dockerfile" \
  --name "My Docker App"

# Docker 镜像
{baseDir}/scripts/coolify applications create-dockerimage \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --docker-image "nginx:latest" \
  --name "Nginx"

# Docker Compose
{baseDir}/scripts/coolify applications create-dockercompose \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --docker-compose-location "./docker-compose.yml"

数据库管理

列出数据库

{baseDir}/scripts/coolify databases list

获取数据库详情

{baseDir}/scripts/coolify databases get --uuid db-123

数据库生命周期管理

# 启动
{baseDir}/scripts/coolify databases start --uuid db-123

# 停止
{baseDir}/scripts/coolify databases stop --uuid db-123

# 重启
{baseDir}/scripts/coolify databases restart --uuid db-123

# 删除
{baseDir}/scripts/coolify databases delete --uuid db-123

创建数据库

# PostgreSQL
{baseDir}/scripts/coolify databases create-postgresql \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-postgres" \
  --postgres-user admin \
  --postgres-password secret \
  --postgres-db myapp

# MySQL
{baseDir}/scripts/coolify databases create-mysql \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-mysql"

# MariaDB
{baseDir}/scripts/coolify databases create-mariadb \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-mariadb"

# MongoDB
{baseDir}/scripts/coolify databases create-mongodb \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-mongo"

# Redis
{baseDir}/scripts/coolify databases create-redis \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-redis"

# KeyDB
{baseDir}/scripts/coolify databases create-keydb \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-keydb"

# ClickHouse
{baseDir}/scripts/coolify databases create-clickhouse \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-clickhouse"

# Dragonfly
{baseDir}/scripts/coolify databases create-dragonfly \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "my-dragonfly"

备份管理

# 列出备份配置
{baseDir}/scripts/coolify databases backups list --uuid db-123

# 创建备份配置
{baseDir}/scripts/coolify databases backups create \
  --uuid db-123 \
  --frequency "0 2 * * *" \
  --enabled true

# 获取备份详情
{baseDir}/scripts/coolify databases backups get \
  --uuid db-123 \
  --backup-uuid backup-456

# 更新备份配置
{baseDir}/scripts/coolify databases backups update \
  --uuid db-123 \
  --backup-uuid backup-456 \
  --frequency "0 3 * * *"

# 触发手动备份
{baseDir}/scripts/coolify databases backups trigger \
  --uuid db-123 \
  --backup-uuid backup-456

# 列出备份执行记录
{baseDir}/scripts/coolify databases backups executions \
  --uuid db-123 \
  --backup-uuid backup-456

# 删除备份配置
{baseDir}/scripts/coolify databases backups delete \
  --uuid db-123 \
  --backup-uuid backup-456

服务管理(Docker Compose)

列出服务

{baseDir}/scripts/coolify services list

获取服务详情

{baseDir}/scripts/coolify services get --uuid service-123

服务生命周期管理

# 启动
{baseDir}/scripts/coolify services start --uuid service-123

# 停止
{baseDir}/scripts/coolify services stop --uuid service-123

# 重启
{baseDir}/scripts/coolify services restart --uuid service-123

# 删除
{baseDir}/scripts/coolify services delete --uuid service-123

创建服务

{baseDir}/scripts/coolify services create \
  --project-uuid proj-123 \
  --server-uuid server-456 \
  --name "My Service" \
  --docker-compose '{"version":"3.8","services":{"web":{"image":"nginx"}}}'

环境变量管理

# 列出
{baseDir}/scripts/coolify services envs list --uuid service-123

# 创建
{baseDir}/scripts/coolify services envs create \
  --uuid service-123 \
  --key API_KEY \
  --value "secret"

# 更新
{baseDir}/scripts/coolify services envs update \
  --uuid service-123 \
  --env-uuid env-456 \
  --value "new-secret"

# 批量更新
{baseDir}/scripts/coolify services envs bulk-update \
  --uuid service-123 \
  --json '{"API_KEY":"secret","DB_HOST":"localhost"}'

# 删除
{baseDir}/scripts/coolify services envs delete \
  --uuid service-123 \
  --env-uuid env-456

部署管理

部署应用

# 通过 UUID 部署
{baseDir}/scripts/coolify deploy --uuid abc-123

# 强制重建
{baseDir}/scripts/coolify deploy --uuid abc-123 --force

# 通过标签部署
{baseDir}/scripts/coolify deploy --tag production

# 即时部署(跳过队列)
{baseDir}/scripts/coolify deploy --uuid abc-123 --instant-deploy

列出部署

# 列出所有正在运行的部署
{baseDir}/scripts/coolify deployments list

# 列出特定应用的部署
{baseDir}/scripts/coolify deployments list-for-app --uuid abc-123

获取部署详情

{baseDir}/scripts/coolify deployments get --uuid deploy-456

取消部署

{baseDir}/scripts/coolify deployments cancel --uuid deploy-456

服务器管理

列出服务器

{baseDir}/scripts/coolify servers list

获取服务器详情

{baseDir}/scripts/coolify servers get --uuid server-123

创建服务器

{baseDir}/scripts/coolify servers create \
  --name "Production Server" \
  --ip "192.168.1.100" \
  --port 22 \
  --user root \
  --private-key-uuid key-456

更新服务器

{baseDir}/scripts/coolify servers update \
  --uuid server-123 \
  --name "Updated Name" \
  --description "Production environment"

验证服务器

{baseDir}/scripts/coolify servers validate --uuid server-123

获取服务器资源

# 列出服务器上的所有资源
{baseDir}/scripts/coolify servers resources --uuid server-123

# 获取服务器上配置的域名
{baseDir}/scripts/coolify servers domains --uuid server-123

删除服务器

{baseDir}/scripts/coolify servers delete --uuid server-123

项目管理

列出项目

{baseDir}/scripts/coolify projects list

获取项目详情

{baseDir}/scripts/coolify projects get --uuid proj-123

创建项目

{baseDir}/scripts/coolify projects create \
  --name "My Project" \
  --description "Production project"

更新项目

{baseDir}/scripts/coolify projects update \
  --uuid proj-123 \
  --name "Updated Name"

删除项目

{baseDir}/scripts/coolify projects delete --uuid proj-123

环境管理

# 列出环境
{baseDir}/scripts/coolify projects environments list --uuid proj-123

# 创建环境
{baseDir}/scripts/coolify projects environments create \
  --uuid proj-123 \
  --name "staging"

# 获取环境详情
{baseDir}/scripts/coolify projects environments get \
  --uuid proj-123 \
  --environment staging

# 删除环境
{baseDir}/scripts/coolify projects environments delete \
  --uuid proj-123 \
  --environment staging

团队管理

列出团队

{baseDir}/scripts/coolify teams list

获取当前团队

{baseDir}/scripts/coolify teams current

获取团队成员

{baseDir}/scripts/coolify teams members

通过 ID 获取团队

{baseDir}/scripts/coolify teams get --id 1

安全管理(私钥)

列出私钥

{baseDir}/scripts/coolify security keys list

获取私钥

{baseDir}/scripts/coolify security keys get --uuid key-123

创建私钥

{baseDir}/scripts/coolify security keys create \
  --name "Production Key" \
  --description "SSH key for production servers" \
  --private-key "$(cat ~/.ssh/id_rsa)"

更新私钥

{baseDir}/scripts/coolify security keys update \
  --uuid key-123 \
  --name "Updated Key Name"

删除私钥

{baseDir}/scripts/coolify security keys delete --uuid key-123

GitHub Apps 管理

列出 GitHub Apps

{baseDir}/scripts/coolify github-apps list

获取 GitHub App

{baseDir}/scripts/coolify github-apps get --uuid gh-123

创建 GitHub App

{baseDir}/scripts/coolify github-apps create \
  --name "My GitHub App" \
  --app-id 123456 \
  --installation-id 789012 \
  --private-key "$(cat github-app-key.pem)"

更新 GitHub App

{baseDir}/scripts/coolify github-apps update \
  --uuid gh-123 \
  --name "Updated App Name"

删除 GitHub App

{baseDir}/scripts/coolify github-apps delete --uuid gh-123

列出仓库

{baseDir}/scripts/coolify github-apps repos --uuid gh-123

列出分支

{baseDir}/scripts/coolify github-apps branches \
  --uuid gh-123 \
  --owner myorg \
  --repo myrepo

常见用例

部署新应用

  1. 列出可用服务器:
    bash {baseDir}/scripts/coolify servers list

  2. 创建应用:
    bash {baseDir}/scripts/coolify applications create-public \ --project-uuid proj-123 \ --server-uuid server-456 \ --git-repository "https://github.com/user/repo" \ --git-branch main \ --name "My App"

  3. 配置环境变量:
    bash {baseDir}/scripts/coolify applications envs create \ --uuid <new-app-uuid> \ --key DATABASE_URL \ --value "postgres://..." \ --is-runtime true

  4. 部署:
    bash {baseDir}/scripts/coolify deploy --uuid <new-app-uuid>

设置带备份的数据库

  1. 创建数据库:
    bash {baseDir}/scripts/coolify databases create-postgresql \ --project-uuid proj-123 \ --server-uuid server-456 \ --name "production-db"

  2. 配置每日备份:
    bash {baseDir}/scripts/coolify databases backups create \ --uuid <db-uuid> \ --frequency "0 2 * * *" \ --enabled true

  3. 触发手动备份:
    bash {baseDir}/scripts/coolify databases backups trigger \ --uuid <db-uuid> \ --backup-uuid <backup-uuid>

监控应用健康状态

  1. 检查应用状态:
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor