Files
terraform-provider-dokploy/docs/resources/compose.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.4 KiB

page_title, subcategory, description
page_title subcategory description
dokploy_compose Resource - dokploy A Docker Compose or Docker Swarm stack managed by Dokploy. Set compose_file to manage the stack definition inline (with source_type = "raw"), or point the stack at a Git repository and set compose_path. ~> Creating this resource does not deploy the stack.

dokploy_compose (Resource)

A Docker Compose or Docker Swarm stack managed by Dokploy.

Set compose_file to manage the stack definition inline (with source_type = "raw"), or point the stack at a Git repository and set compose_path.

~> Creating this resource does not deploy the stack.

Schema

Required

  • environment_id (String) Environment this stack belongs to.
  • name (String) Display name of the stack.

Optional

  • app_name (String) Unique Docker stack name. Generated by Dokploy when omitted. Changing it forces a new stack.
  • auto_deploy (Boolean) Deploy automatically when the configured trigger fires.
  • bitbucket_branch (String) Bitbucket branch to deploy.
  • bitbucket_id (String) ID of the configured Bitbucket provider connection.
  • bitbucket_owner (String) Bitbucket repository owner.
  • bitbucket_repository (String) Bitbucket repository name.
  • bitbucket_repository_slug (String) Bitbucket repository slug.
  • branch (String) GitHub branch to deploy.
  • command (String) Custom docker compose command to run.
  • compose_file (String) Inline Compose file contents. Used when source_type is raw.
  • compose_path (String) Path to the Compose file within the repository.
  • compose_type (String) Whether to run the stack with Docker Compose or Docker Swarm. Valid values: docker-compose, stack.
  • create_env_file (Boolean) Write the environment variables to a .env file next to the Compose file.
  • custom_git_branch (String) Branch to deploy for a custom Git remote.
  • custom_git_ssh_key_id (String) SSH key used to clone a private custom Git remote.
  • custom_git_url (String) Git remote URL, when source_type is git.
  • delete_volumes (Boolean) Whether to delete the stack's Docker volumes when this resource is destroyed. Defaults to false, which preserves the data.
  • description (String) Free-form description.
  • enable_submodules (Boolean) Clone Git submodules when checking out the repository.
  • env (String) Environment variables in KEY=value format, one per line.
  • gitea_branch (String) Gitea branch to deploy.
  • gitea_id (String) ID of the configured Gitea provider connection.
  • gitea_owner (String) Gitea repository owner.
  • gitea_repository (String) Gitea repository name.
  • github_id (String) ID of the configured GitHub provider connection.
  • gitlab_branch (String) GitLab branch to deploy.
  • gitlab_id (String) ID of the configured GitLab provider connection.
  • gitlab_owner (String) GitLab repository owner.
  • gitlab_path_namespace (String) Full GitLab namespace path.
  • gitlab_project_id (Number) Numeric GitLab project ID.
  • gitlab_repository (String) GitLab repository name.
  • icon (String) Icon shown next to the stack in the Dokploy UI.
  • isolated_deployment (Boolean) Run the stack on its own isolated Docker network.
  • isolated_deployments_volume (Boolean) Prefix volume names for isolated deployments. Retained for backwards compatibility.
  • owner (String) GitHub repository owner.
  • randomize (Boolean) Append a random suffix to service and volume names.
  • repository (String) GitHub repository name.
  • server_id (String) Remote server to deploy on. Omit to use the Dokploy host itself.
  • service_networks (String) Per-service Docker network attachments, as a JSON object mapping each service name in the stack to an array of network IDs.
  • source_type (String) Where the Compose file comes from. Valid values: git, github, gitlab, bitbucket, gitea, raw.
  • suffix (String) Suffix appended to generated resource names.
  • trigger_type (String) What triggers an automatic deployment. Valid values: push, tag.
  • watch_paths (List of String) Glob patterns that limit which changed paths trigger an automatic deployment.

Read-Only

  • compose_status (String) Current status reported by Dokploy: idle, running, done or error.
  • created_at (String) RFC 3339 timestamp of when the stack was created.
  • id (String) Unique compose identifier.