Skip to main content

apx-dokploy

Dokploy for Action Platform: the dokploy deploy target, its overlay, readiness checks, and tools that read what runs on the instance. apx- is the prefix every Action Platform extension carries.

action-platform plugin install dokploy
export DOKPLOY_URL= DOKPLOY_API_KEY=      # or Plugins → Dokploy → Configure on the platform
action-platform cloud set dokploy               # Dockerfile, compose file, image workflow
action-platform deploy --dry-run                # readiness: settings, image, key, application
action-platform deploy                          # point Dokploy at <image>:<version>, follow to done
action-platform diagnose

How it works

The build never runs on the platform or on Dokploy. The overlay's workflow publishes ghcr.io/<owner>/<repo>:<version> on every published release; the target tells Dokploy which tag to run and waits for the deployment to end. Every deployment therefore references a release, and rolling back is pointing at the previous tag.

Overlay Dockerfile (two stages on the images-base build and runtime images, ap-build package, port 8000), .dockerignore, docker-compose.yml for a machine, .github/workflows/docker-publish.yml (GitHub CI only), DEPLOY.md. One overlay for every language of the official web/* templates
Mapping Dokploy project = [project] name; environment = the scope (dev, prod); application = <name>-<scope>. create and the first deploy provision what is missing, the domain included when [deploy.domains] names one
Readiness dokploy.settings (url, key, image known), image.published (a manifest HEAD at the registry, following the bearer challenge), dokploy.credentials (the key opens project.all), dokploy.application (exists, not mid-deployment). The platform runs it after every release and refuses a blocked deploy
Deploy application.saveDockerProvider with <image>:<version>, application.deploy titled v<version>, then application.one until done or error (15 minutes at most). Every step reaches the platform's run log
Rollback the previous done deployment titled v<version> in the history, or the version asked for, deployed again
Diagnose status, image, version and url of the scope's application
Delete application.delete of the scope's application
Tools dokploy_projects, dokploy_applications, dokploy_deployments
Commands action-platform dokploy projects|applications|deployments

Configuration

platform.toml:

[deploy]
target = "dokploy"
# url = "https://dokploy.example.com"    # overrides the plugin option
# image = "ghcr.io/acme/shop"            # default: ghcr.io/<[source_host] repo>
# project = "shop"                       # default: [project] name
# application = "shop"                   # default: [project] name
# port = 8000

[deploy.domains]
prod = "shop.example.com"
dev = "shop-dev.example.com"

Plugin options (Plugins → Dokploy → Configure on the platform; on a machine, the environment or ~/.action-platform/plugins/dokploy.json):

Option Environment
url DOKPLOY_URL where the dashboard answers. Order on a machine: [deploy], AP_DOKPLOY_URL, DOKPLOY_URL, the options file
api_key DOKPLOY_API_KEY Settings → API Keys in Dokploy. Never in platform.toml
registry_username, registry_password AP_DOKPLOY_REGISTRY_* only for a private image; a GitHub token with read:packages for ghcr.io

A deploy job carries the options as AP_DOKPLOY_<KEY>.

Requirements

  • Dokploy 0.20 or newer (projects with environments; application.saveDockerProvider).
  • The image published before the deploy: on GitHub, the overlay's workflow does it on every release. Another CI publishes <image>:<version> itself; the image.published check waits for it.
  • The container listens on $PORT (8000 in the overlay's Dockerfile).

Development

pip install -e ".[dev]"
ruff check . && ruff format --check . && pytest

Tests never reach the network: tests/fake.py is a Dokploy in memory.

Release files for apx-dokploy 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for apx-dokploy 0.1.0
File Size Uploaded
apx_dokploy-0.1.0.tar.gz 23.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for apx-dokploy 0.1.0
File Interpreter ABI Platform
apx_dokploy-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 46.0 kB

Release files / apx_dokploy-0.1.0.tar.gz

Download URL apx_dokploy-0.1.0.tar.gz
Size 23.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2477be68d77ca10ad59ecbfbc76963f1818e5034912536b678cf6089d518e060
BLAKE2b-256 checksum
How to use checksums
de3029df80a4476438e9ae48698597352322fc0234fe61f8522666d56cfa4a11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / apx_dokploy-0.1.0-py3-none-any.whl

Download URL apx_dokploy-0.1.0-py3-none-any.whl
Size 22.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
101f1eea4a5a4baddf27c6aa881a3024c51fe759b31863286cf2aa7a55b2eb58
BLAKE2b-256 checksum
How to use checksums
1a70ae4e804c41675b17265b305a12c0028c3e463ecb4e3472e1b2e19e39a2bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page