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-validatoragent
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_templatewith 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:
- Verify host capacity (
check_resource_thresholds) - Check domain availability (not already routed)
- Prepare environment variables
- Ensure backup strategy for stateful apps
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_templatetool - MCP tokens scope access to user's apps only
- Billing/credits handled by portal, not Dockhand
