Add DNS provider support for Arvan Cloud
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 37.4k
- Forks
- 3k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 73
Description
What problem will this feature address?
Dokploy's DNS provider integration does not currently support Arvan Cloud.
Arvan Cloud is a widely used DNS/CDN provider, particularly for users and businesses in Iran. Users who already manage their domains and DNS zones through Arvan Cloud currently have to manually create or update DNS records outside Dokploy when deploying applications.
Moving existing domains to another DNS provider such as Cloudflare or AWS Route53 just to use Dokploy's DNS automation is not practical, especially when managing multiple production domains.
Describe the solution you'd like
Add Arvan Cloud as a DNS provider in Dokploy, using the existing DnsClient interface in:
packages/server/src/utils/dns/
The implementation could follow the same provider architecture used by Cloudflare, Route53, Porkbun, and the other DNS providers.
Arvan Cloud provides a REST API for managing domains and DNS records:
https://www.arvancloud.ir/api/cdn/4.0
API base:
https://napi.arvancloud.ir/cdn/4.0
The API supports the operations required by Dokploy, including:
- Discovering/listing domains
- Listing DNS records
- Creating DNS records
- Updating DNS records
- Deleting DNS records
- Authentication using an Arvan Cloud API key
DNS records are managed through endpoints under:
/domains/{domain}/dns-records
For example:
GET /domains/{domain}/dns-records
POST /domains/{domain}/dns-records
and individual records can be updated or deleted using their record ID.
Authentication is performed through the Authorization header using an Arvan Cloud API key.
Once credentials are configured in Dokploy, users should be able to select Arvan Cloud as their DNS provider and let Dokploy automatically create/update the DNS records required for deployed applications.
Describe alternatives you've considered
The current workaround is to manually create and update the required DNS records in the Arvan Cloud dashboard whenever a domain is added to Dokploy.
Another alternative is moving DNS management to an already-supported provider such as Cloudflare or AWS Route53, but this is undesirable for users who already have their domains and DNS infrastructure configured in Arvan Cloud.
Additional context
Arvan Cloud's DNS API already provides the CRUD operations required for implementing Dokploy's DnsClient abstraction.
There are also existing open-source integrations using the same Arvan Cloud DNS API, so the API is already being used successfully for automated DNS management.
API documentation:
https://www.arvancloud.ir/api/cdn/4.0
Will you send a PR to implement it?
Maybe, need help
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in packages/server/src/utils/dns/ by reading the DnsClient interface and the existing Cloudflare, Route53, and Porkbun providers. Use the Arvan Cloud API documentation to map domain discovery and DNS record CRUD operations, including API-key authentication. Done means Arvan Cloud can be selected in Dokploy and its records are automated for deployed applications.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- backend, networking
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100