Files
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

53 lines
2.6 KiB
Markdown

---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "dokploy_volume_backup Resource - dokploy"
subcategory: ""
description: |-
A scheduled backup of a Docker volume to a configured dokploy_destination.
This is the counterpart to a dokploy_mount with type = "volume": the mount gives the volume a stable name, and this resource copies its contents off the host on a schedule.
Set exactly one of the *_id attributes to say which service owns the volume.
---
# dokploy_volume_backup (Resource)
A scheduled backup of a Docker volume to a configured `dokploy_destination`.
This is the counterpart to a `dokploy_mount` with `type = "volume"`: the mount gives the volume a stable name, and this resource copies its contents off the host on a schedule.
Set exactly one of the `*_id` attributes to say which service owns the volume.
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- `cron_expression` (String) Standard five-field cron expression, for example `0 4 * * *`.
- `destination_id` (String) Backup destination (S3-compatible bucket) to upload to.
- `name` (String) Display name of the backup job.
- `prefix` (String) Path prefix inside the destination bucket, for example `backups/shop/`.
- `volume_name` (String) Name of the Docker volume to back up.
### Optional
- `app_name` (String) Docker service name that owns the volume. Derived by Dokploy when omitted.
- `application_id` (String) Application that owns the volume.
- `compose_id` (String) Compose stack that owns the volume.
- `enabled` (Boolean) Whether the backup schedule is active.
- `keep_latest_count` (Number) Number of backups to retain. Older ones are pruned.
- `libsql_id` (String) libSQL instance that owns the volume.
- `mariadb_id` (String) MariaDB instance that owns the volume.
- `mongo_id` (String) MongoDB instance that owns the volume.
- `mysql_id` (String) MySQL instance that owns the volume.
- `postgres_id` (String) PostgreSQL instance that owns the volume.
- `redis_id` (String) Redis instance that owns the volume.
- `service_name` (String) Service inside a Compose stack that owns the volume.
- `service_type` (String) The kind of service that owns the volume. Valid values: `application`, `postgres`, `mysql`, `mariadb`, `mongo`, `redis`, `compose`, `libsql`. Defaults to `application`.
- `turn_off` (Boolean) Stop the service while the backup runs. Slower, but guarantees a consistent copy of data that is being written to.
### Read-Only
- `created_at` (String) RFC 3339 timestamp of when the backup job was created.
- `id` (String) Unique volume backup identifier.