Files
terraform-provider-dokploy/CHANGELOG.md
T
max-voitcov 2d1caf6e73
build / build (push) Successful in 3m56s
release / release (push) Successful in 15m2s
Cover what Dokploy v0.30 added
Six new resources, all backed by endpoints that did not exist before v0.30.0
and verified end-to-end against a live v0.30.2 instance:

  dokploy_network         Docker networks, now first-class. Services attach
                          through network_ids, which is what deprecates
                          Compose's isolated_deployment upstream.
  dokploy_dns_provider    Cloudflare or Route53, so adding a domain creates
                          its DNS record.
  dokploy_vault_provider  Env values resolved from HashiCorp Vault, Infisical,
                          AWS, Doppler, Azure or Scaleway at deploy time, so
                          the secret never lands in Dokploy or in state.
  dokploy_schedule        Cron jobs in a container, a stack, or on a server.
  dokploy_volume_backup   Scheduled backups of a named volume — the companion
                          to a mount that persists.
  dokploy_libsql          The sixth managed database engine.

libsql.create is the strictest endpoint in the API: eleven keys required to
be present, several only meaningfully null, no generated service name, and it
returns `true` rather than the row. CreateDefaults and ListIDs absorb all
three so the resource behaves like every other database.

Also filled the gaps a field-by-field diff against the live schema turned up:
domain gains `enabled` (the v0.30.0 park-a-domain toggle), compose gains
create_env_file, icon and service_networks, application gains icon and
preview_require_collaborator_permissions, and mounts accept libsql.

DNS and vault credentials are masked by Dokploy on read, so `config` is
tagged noread and keeps the configured value, as the basic-auth password
already does.
2026-08-26 00:40:27 +03:00

4.3 KiB

Changelog

All notable changes to this provider are documented here.

The format follows Keep a Changelog, and this project adheres to Semantic Versioning.

0.2.0 — 2026-08-26

Tracks Dokploy v0.30.x. Verified against a live v0.30.2 instance (597 API operations).

Fixed

  • dokploy_mount could silently create a volume that never persisted anything. A type = "volume" mount with no volume_name was accepted by Dokploy and by this provider. Dokploy renders such a mount as {Source: "", Target: <mount_path>}, and Docker reads an empty source as an anonymous volume: every deploy created a brand-new volume and orphaned the previous one, so data never survived a redeploy and disk usage grew on every deployment.

    The provider now rejects that configuration at plan time, before anything is created, with an error explaining the consequence. The same check covers the two neighbouring cases — type = "bind" without host_path and type = "file" without file_path — and flags a field set for the wrong type, which Dokploy would otherwise ignore silently.

    If you already have such a mount, add a volume_name, apply, and redeploy the service. The data in the current anonymous volume is not migrated; copy it off first if you need it.

Added

New resources, all from Dokploy v0.30.0:

  • dokploy_network — Docker networks as first-class objects: bridge or overlay, with internal, attachable, IPv4/IPv6, mtu and custom ipam. Docker networks are immutable, so every attribute forces replacement.
  • dokploy_dns_provider — a Cloudflare or AWS Route53 connection that lets Dokploy create DNS records for domains automatically.
  • dokploy_vault_provider — resolve environment variables from an external secret manager at deploy time with ${{vault.<scope>.<key>}}. Supports HashiCorp Vault/OpenBao, Infisical, AWS Secrets Manager, Doppler, Azure Key Vault and Scaleway.
  • dokploy_schedule — cron jobs running in an application container, a Compose service, a remote server, or on the Dokploy host.
  • dokploy_volume_backup — scheduled backups of a Docker volume to a dokploy_destination. The natural companion to a named dokploy_mount.
  • dokploy_libsql — the sixth managed database engine, with primary and replica sqld nodes and libSQL namespaces.

New attributes on existing resources:

  • dokploy_domain gains enabled, the v0.30.0 enable/disable toggle. It pulls a route out of Traefik while keeping certificates, paths and middleware intact, so a domain can be parked and restored without reconfiguring it.
  • dokploy_compose gains create_env_file, icon and service_networks, which attaches individual services in a stack to specific Docker networks.
  • dokploy_application gains icon and preview_require_collaborator_permissions.
  • dokploy_mount and dokploy_volume_backup accept libsql as a service_type.

Changed

  • network_ids and detach_dokploy_network are now documented as the supported way to control service networking. Compose's isolated_deployment is deprecated upstream in v0.30.0 — attaching networks per service covers the same ground and survives restarts. The attribute still exists and still works; prefer network_ids for new configurations.

Notes

  • Dokploy's libsql.create requires eleven keys to be present even when null is the only sensible value, and does not generate a service name. The provider fills both in, so app_name stays optional as it is for every other database.
  • config on dokploy_dns_provider and dokploy_vault_provider is masked by Dokploy on read. Terraform keeps the value you configured and does not detect drift in those credentials.

0.1.0 — 2026-08-09

Initial release. Projects, environments, applications, Compose stacks, five managed databases (PostgreSQL, MySQL, MariaDB, MongoDB, Redis), domains, mounts, ports, redirects, basic auth, registries, SSH keys, certificates and backup destinations, plus five data sources and a web-service module.