ClawSkills logoClawSkills

Dokploy

通过 Dokploy API 管理 Dokploy 的部署、项目、应用程序和域。

介绍

# Dokploy Skill

与 Dokploy 的 API 交互,以管理项目、应用程序、域名和部署。

## 前置条件

1. **Dokploy 实例**正在运行并具有 API 访问权限 2. **API 密钥**从 `/settings/profile` → “API/CLI 部分”生成 3. 设置 `DOKPLOY_API_URL` 环境变量(默认:`http://localhost:3000`)

## 配置

设置这些环境变量或使用配置命令:

```bash # Dokploy instance URL export DOKPLOY_API_URL="https://your-dokploy-instance.com"

# Your API token export DOKPLOY_API_KEY="your-generated-api-key"

# Or run the config command dokploy-config set --url "https://your-dokploy-instance.com" --key "your-api-key" ```

## 项目

### 列出所有项目 ```bash dokploy-project list ```

### 获取项目详情 ```bash dokploy-project get <project-id> ```

### 创建新项目 ```bash dokploy-project create --name "My Project" --description "Description here" ```

### 更新项目 ```bash dokploy-project update <project-id> --name "New Name" --description "Updated" ```

### 删除项目 ```bash dokploy-project delete <project-id> ```

## 应用程序

### 列出项目中的应用程序 ```bash dokploy-app list --project <project-id> ```

### 获取应用程序详情 ```bash dokploy-app get <application-id> ```

### 创建应用程序 ```bash dokploy-app create \ --project <project-id> \ --name "my-app" \ --type "docker" \ --image "nginx:latest" ```

**应用程序类型:** `docker`、`git`、`compose`

### 触发部署 ```bash dokploy-app deploy <application-id> ```

### 获取部署日志 ```bash dokploy-app logs <application-id> --deployment <deployment-id> ```

### 列出部署 ```bash dokploy-app deployments <application-id> ```

### 更新应用程序 ```bash dokploy-app update <application-id> --name "new-name" --env "KEY=VALUE" ```

### 删除应用程序 ```bash dokploy-app delete <application-id> ```

## 域名

### 列出应用程序的域名 ```bash dokploy-domain list --application <application-id> ```

### 获取域名详情 ```bash dokploy-domain get <domain-id> ```

### 为应用程序添加域名 ```bash dokploy-domain create \ --application <application-id> \ --domain "app.example.com" \ --path "/" \ --port 80 ```

### 更新域名 ```bash dokploy-domain update <domain-id> --domain "new.example.com" ```

### 删除域名 ```bash dokploy-domain delete <domain-id> ```

## 环境变量

### 列出应用程序的环境变量 ```bash dokploy-app env list <application-id> ```

### 设置环境变量 ```bash dokploy-app env set <application-id> --key "DATABASE_URL" --value "postgres://..." ```

### 删除环境变量 ```bash dokploy-app env delete <application-id> --key "DATABASE_URL" ```

## 实用命令

### 检查 API 连接 ```bash dokploy-status ```

### 查看当前配置 ```bash dokploy-config show ```

## API 参考

基础 URL:`$DOKPLOY_API_URL/api`

| 端点 | 方法 | 描述 | |----------|--------|-------------| | `/project.all` | GET | 列出所有项目 | | `/project.create` | POST | 创建项目 | | `/project.byId` | GET | 通过 ID 获取项目 | | `/project.update` | PATCH | 更新项目 | | `/project.delete` | DELETE | 删除项目 | | `/application.all` | GET | 列出应用程序 | | `/application.create` | POST | 创建应用程序 | | `/application.byId` | GET | 通过 ID 获取应用程序 | | `/application.update` | PATCH | 更新应用程序 | | `/application.delete` | DELETE | 删除应用程序 | | `/application.deploy` | POST | 触发部署 | | `/deployment.all` | GET | 列出部署 | | `/deployment.byId` | GET | 通过 ID 获取部署 | | `/deployment.logs` | GET | 获取部署日志 | | `/domain.all` | GET | 列出域名 | | `/domain.create` | POST | 创建域名 | | `/domain.update` | PATCH | 更新域名 | | `/domain.delete` | DELETE | 删除域名 |

## 注意事项

- 所有 API 调用都需要 `x-api-key` 请求头 - 在脚本中使用 `jq` 进行 JSON 解析 - 某些操作需要管理员权限 - 部署是异步的 — 请使用状态端点检查进度

更多产品