dokploy_compose
Manage Docker Compose services: create, deploy, update, and control them with environment variable and git source integration.
Instructions
Manage Docker Compose services. create: name+environmentId. get: composeId (returns env vars). update: composeId+fields (supports sourceType, composeFile for raw/inline, git source fields, autoDeploy). delete/start/stop/getDefaultCommand: composeId. deploy: composeId, redeploy? (note: first deploy on new services may fail — retry immediately). move: composeId+targetEnvironmentId. loadServices: composeId (must deploy first). loadMounts: composeId+serviceName. saveEnvironment: composeId+env (KEY=VALUE pairs, one per line). cancelDeployment/cleanQueues/killBuild/refreshToken: composeId. readLogs: composeId+containerId, tail?, since?, search?.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| composeId | No | ||
| name | No | ||
| environmentId | No | ||
| description | No | ||
| composeType | No | docker-compose or stack | |
| composeFile | No | Docker Compose YAML content (for sourceType: raw, set this to the inline compose file) | |
| serverId | No | ||
| env | No | Environment variables as KEY=VALUE pairs, one per line. Example: 'DB_HOST=localhost\nDB_PORT=5432' | |
| command | No | ||
| sourceType | No | Source type. github → set repository+owner+branch (+composePath). git → set customGitUrl+customGitBranch (+customGitSSHKeyId for private). raw → set composeFile (inline YAML). The API also supports gitlab/bitbucket/gitea sources, but those need provider-specific fields not yet exposed by this tool. | |
| customGitUrl | No | Custom git repository URL | |
| customGitBranch | No | Custom git branch | |
| customGitSSHKeyId | No | SSH key ID for private git repos | |
| repository | No | GitHub repository (owner/repo format) | |
| branch | No | GitHub branch | |
| owner | No | GitHub owner/organization | |
| composePath | No | Path to compose file in repo | |
| autoDeploy | No | Enable auto-deploy on git push | |
| appName | No | Internal app name | |
| deleteVolumes | No | ||
| redeploy | No | ||
| title | No | ||
| deployDescription | No | ||
| targetEnvironmentId | No | ||
| type | No | ||
| serviceName | No | ||
| containerId | No | Container ID for readLogs (use dokploy_docker findContainers to discover) | |
| tail | No | Number of recent log lines (default 100) | |
| since | No | Time range: 'all' or a duration like '30m', '1h', '7d' | |
| search | No | Filter log lines by substring |