Dockhand Deploy
Guide users through deployment workflows for self-hosted applications. Supports template-based deployments (364+ open-source apps) and traditional WordPress/Ghost deployments.
Configuration Context
IMPORTANT: When creating DNS records or referencing domains, use the user's configured platform_domain, NOT example placeholders. Discover it by:
- Checking existing DNS records via
dns_list_records
- Checking existing apps via
dokploy_list_apps
- The user's config contains
platform_domain (e.g., mycompany.com)
Replace <platform_domain> in examples below with the user's actual domain.
Deployment Patterns
1. Template Deployment (Recommended)
Deploy from Dokploy's catalog of 364+ open-source applications.
Workflow:
- Browse templates:
dokploy_list_templates (filterable by category/tag)
- Select template and review requirements
- Configure environment variables
- Deploy:
dokploy_deploy_template
- Create DNS record:
dns_create_record (if custom domain)
- Verify deployment with
dh-deploy-validator agent
MCP Tool Sequence:
dokploy_list_templates category="databases"
→ User selects "postgresql"
dokploy_deploy_template template_id="postgresql" app_name="my-postgres" env_vars={...}
→ Returns app_id
dns_create_record type="CNAME" name="db" content="platform-core.<your_domain>"
→ Traefik auto-routes
2. Traditional Deployment (WordPress/Ghost)
Deploy WordPress or Ghost with full configuration.
Workflow:
- Gather requirements: domain, admin email, site name
- Deploy via
dokploy_deploy_template with CMS-specific template
- Configure DNS:
dns_create_record
- Wait for provisioning (check
dokploy_app_status)
- Run CMS setup (admin account creation)
3. Redeployment
Redeploy existing application (after code changes or config updates).
Workflow:
- Check current status:
dokploy_app_status app_id=<id>
- Trigger redeploy:
dokploy_redeploy app_id=<id> confirmed=true
- Monitor progress via status checks
- Verify health post-deploy
Template Categories
Common categories available:
- CMS: WordPress, Ghost, Strapi, Directus
- Databases: PostgreSQL, MySQL, Redis, MongoDB
- Dev Tools: Gitea, GitLab, n8n, Minio
- Analytics: Plausible, Umami, Matomo
- Communication: Mattermost, Rocket.Chat
- Productivity: Nextcloud, Outline, BookStack
Browse with: dokploy_list_templates category="<category>"
Pre-Deployment Checklist
Before any deployment:
Post-Deployment Verification
After deployment:
- Check app status:
dokploy_app_status
- Verify DNS propagation:
dns_check_propagation
- Test HTTPS access:
traefik_check_certs
- Run health endpoint if available
- Sync state to git: suggest
/dh:apps sync
Error Handling
| Error |
Resolution |
| DNS propagation slow |
Wait 5-10 min, check with dns_check_propagation |
| Container failing |
Check logs via ssh_exec, verify env vars |
| Certificate not issued |
Verify DNS points to Traefik, check ACME logs |
| Port conflict |
Check existing services, choose different port |
Integration with Client Portal
For client-portal deployments:
- Templates deploy via same
dokploy_deploy_template tool
- MCP tokens scope access to user's apps only
- Billing/credits handled by portal, not Dockhand
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: dh-deploy3description: Guide deployment workflows for applications. Use when user wants to deploy an app, deploy a template, redeploy a service, browse templates, or says "deploy", "launch", "spin up", "install app". Use when this capability is needed.4---56# Dockhand Deploy78Guide users through deployment workflows for self-hosted applications. Supports template-based deployments (364+ open-source apps) and traditional WordPress/Ghost deployments.910## Configuration Context1112**IMPORTANT**: When creating DNS records or referencing domains, use the user's configured `platform_domain`, NOT example placeholders. Discover it by:131. Checking existing DNS records via `dns_list_records`142. Checking existing apps via `dokploy_list_apps`153. The user's config contains `platform_domain` (e.g., `mycompany.com`)1617Replace `<platform_domain>` in examples below with the user's actual domain.1819## Deployment Patterns2021### 1. Template Deployment (Recommended)2223Deploy from Dokploy's catalog of 364+ open-source applications.2425**Workflow:**261. Browse templates: `dokploy_list_templates` (filterable by category/tag)272. Select template and review requirements283. Configure environment variables294. Deploy: `dokploy_deploy_template`305. Create DNS record: `dns_create_record` (if custom domain)316. Verify deployment with `dh-deploy-validator` agent3233**MCP Tool Sequence:**34```35dokploy_list_templates category="databases"36 → User selects "postgresql"37dokploy_deploy_template template_id="postgresql" app_name="my-postgres" env_vars={...}38 → Returns app_id39dns_create_record type="CNAME" name="db" content="platform-core.<your_domain>"40 → Traefik auto-routes41```4243### 2. Traditional Deployment (WordPress/Ghost)4445Deploy WordPress or Ghost with full configuration.4647**Workflow:**481. Gather requirements: domain, admin email, site name492. Deploy via `dokploy_deploy_template` with CMS-specific template503. Configure DNS: `dns_create_record`514. Wait for provisioning (check `dokploy_app_status`)525. Run CMS setup (admin account creation)5354### 3. Redeployment5556Redeploy existing application (after code changes or config updates).5758**Workflow:**591. Check current status: `dokploy_app_status app_id=<id>`602. Trigger redeploy: `dokploy_redeploy app_id=<id> confirmed=true`613. Monitor progress via status checks624. Verify health post-deploy6364## Template Categories6566Common categories available:67- **CMS**: WordPress, Ghost, Strapi, Directus68- **Databases**: PostgreSQL, MySQL, Redis, MongoDB69- **Dev Tools**: Gitea, GitLab, n8n, Minio70- **Analytics**: Plausible, Umami, Matomo71- **Communication**: Mattermost, Rocket.Chat72- **Productivity**: Nextcloud, Outline, BookStack7374Browse with: `dokploy_list_templates category="<category>"`7576## Pre-Deployment Checklist7778Before any deployment:79- [ ] Verify host capacity (`check_resource_thresholds`)80- [ ] Check domain availability (not already routed)81- [ ] Prepare environment variables82- [ ] Ensure backup strategy for stateful apps8384## Post-Deployment Verification8586After deployment:871. Check app status: `dokploy_app_status`882. Verify DNS propagation: `dns_check_propagation`893. Test HTTPS access: `traefik_check_certs`904. Run health endpoint if available915. Sync state to git: suggest `/dh:apps sync`9293## Error Handling9495| Error | Resolution |96|-------|------------|97| DNS propagation slow | Wait 5-10 min, check with `dns_check_propagation` |98| Container failing | Check logs via `ssh_exec`, verify env vars |99| Certificate not issued | Verify DNS points to Traefik, check ACME logs |100| Port conflict | Check existing services, choose different port |101102## Integration with Client Portal103104For client-portal deployments:105- Templates deploy via same `dokploy_deploy_template` tool106- MCP tokens scope access to user's apps only107- Billing/credits handled by portal, not Dockhand108109---110> Converted and distributed by [TomeVault](https://tomevault.io/claim/masonjames) — claim your Tome and manage your conversions.111<!-- tomevault:4.0:skill_md:2026-04-14 -->