What dokku/dokku shipped
Written by FoxPlug from the repository's own releases; not affiliated with Dokku. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/dokku/dokku; Dokku did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Nginx upstreams can now be resolved via coredns-docker, so nginx stops routing to stale container IPs after host reboots, Docker upgrades without live-restore, or runtime container restarts. Pull request #8595
- New proxy:route:set, remove, clear, and report commands let users declare path-prefix routes to non-web Procfile processes without hand-writing nginx.conf.sigil. Pull request #8726
- After a failed deploy, the previous running image is now kept restartable instead of leaving ps:restart, ps:start, and ps:restore to redeploy the broken release or fail with App image not found. Pull request #9103
- The first web readiness healthcheck in app.json is now also turned into health checks and retries for caddy and other proxies that previously routed to new containers as soon as they started. Pull request #9083
- Source installs now default TARGETARCH and GOARCH to the host architecture, so arm64 hosts no longer download amd64 dependencies and build amd64 plugins that fail at plugin:install. Pull request #9256
- The shared stack property is split into per-builder properties managed via builder-herokuish:set and builder-pack:set, so a value valid for one builder no longer breaks the other. Pull request #8700
- The ps plugin restore property now affects ps:restore rather than ps:retire. Pull request #9253
- Procfile-util was bumped from 0.20.8 to 0.20.9. Pull request #9246
- Docker-container-healthchecker was bumped from 0.16.0 to 0.16.1. Pull request #9247
- Herokuish was bumped from 0.11.23 to 0.11.24. Pull request #9245
Why it matters
This week fixes several ways deploys and restarts can send traffic to the wrong container or bring back a broken release, and makes source installs on arm64 hosts build for the right architecture. Path routing to non-web processes no longer needs a hand-written nginx.conf.sigil, and proxy health checks now follow app.json readiness.
Changelog entry
- Resolve nginx upstreams via coredns-docker to avoid stale container IPs Pull request #8595
- Add proxy:route:set, remove, clear, and report for path routes to non-web processes Pull request #8726
- Keep the previous image restartable after a failed deploy Pull request #9103
- Add proxy health checks from app.json readiness Pull request #9083
- Default source installs to the host architecture Pull request #9256
- Split the stack property into per-builder properties Pull request #8700
- Make the ps plugin restore property affect ps:restore, not ps:retire Pull request #9253
- Bump procfile-util to 0.20.9 Pull request #9246
- Bump docker-container-healthchecker to 0.16.1 Pull request #9247
- Bump herokuish to 0.11.24 Pull request #9245
- Keep kubernetes updates out of the plugins group Pull request #9243
This week: nginx can resolve upstreams via coredns-docker to avoid stale container IPs, new proxy:route commands for path routing to non-web processes, failed deploys keep the previous image restartable, source installs default to the host architecture, and stack is now per-build
This week in Dokku: nginx can resolve upstreams via coredns-docker so it stops routing to stale container IPs after reboots and restarts. New proxy:route:set, remove, clear, and report commands let you declare path-prefix routes to non-web Procfile processes without hand-writing nginx.conf.sigil. After a failed deploy, the previous image stays restartable for ps:restart, ps:start, and ps:restore. Source installs now default to the host architecture, so arm64 hosts build arm64 plugins. The stack property is split per builder, and proxy health checks now follow the first web readiness healthcheck in app.json.
Week of October 26, 2026
What shipped
- Added a datastore core plugin that serves every official datastore under one command, with the datastore type as the first argument, such as dokku datastore:create postgres lollipop. Pull request #9227
- Ps:rebuild now accepts a --no-cache flag that performs a single uncached build regardless of builder without persisting any setting for later deploys. Pull request #9225
- Modernized the bootstrap script output with per-step install display in Dokku log style, a live view of the running step in a terminal, per-step timings, a timestamped log file under /var/log/dokku, and an end summary. Pull request #9219
- Fixed attach-post-create to attach every network in the list instead of only the first, matching the existing attach-post-deploy behavior. Pull request #9223
- Released v0.38.34, including the attach-post-create network fix and the ps:rebuild --no-cache flag. Release
- Added the missing wget dependency to the Makefile for source installs to prevent installation failure. Pull request #9221
- Updated the ps:set dockerfile-start-cmd documentation example to delimit passed flags with a double-dash. Pull request #9212
- Released v0.38.33, including the Makefile wget dependency fix and the dockerfile-start-cmd documentation update. Release
- Bumped herokuish to 0.11.23. Pull request #9232
- Bumped dokku-update to 0.11.0. Pull request #9220
Why it matters
This week brought a new datastore core plugin that puts every official datastore behind a single command, and a --no-cache option for ps:rebuild for one-off uncached builds. It also fixed multi-network attachment in attach-post-create and modernized bootstrap script output with timings and a log file. Two patch releases, v0.38.33 and v0.38.34, carried these changes.
Changelog entry
- Add a datastore core plugin serving every official datastore under one command Pull request #9227
- Add --no-cache flag to ps:rebuild Pull request #9225
- Modernize bootstrap script output with per-step timings, a log file and a summary Pull request #9219
- Attach every network in attach-post-create Pull request #9223
- Release v0.38.34 Release
- Release v0.38.33 Release
- Add missing wget dependency to Makefile for source installs Pull request #9221
- Delimit passed flags in dockerfile-start-cmd example with a double-dash Pull request #9212
- Bump herokuish to 0.11.23 Pull request #9232
- Bump herokuish to 0.11.22 Pull request #9229
- Bump dokku-update to 0.11.0 Pull request #9220
Dokku updates: a datastore core plugin now serves every official datastore under one command, ps:rebuild gains --no-cache, attach-post-create now attaches every network in the list, and the bootstrap script shows per-step output and timings. v0.38.33 and v0.38.34 are out.
This week's Dokku changes: a new datastore core plugin serves every official datastore through one command, with the datastore type as the first argument. ps:rebuild now accepts --no-cache for a single uncached build regardless of builder, without persisting a setting for later deploys. attach-post-create now attaches every network in the list rather than only the first, matching attach-post-deploy. The bootstrap script shows each install step in Dokku log style with per-step timings, a timestamped log file under /var/log/dokku, and an end summary. Source installs gained a missing wget dependency, the dockerfile-start-cmd example now delimits flags with a double-dash, and herokuish and dokku-update were bumped. Releases v0.38.33 and v0.38.34 are available.
Week of October 19, 2026
What shipped
- Deploy locks are now released and the build record finalized whenever a deploy exits, and apps:lock actually blocks as intended. Pull request #9189
- Stale extracted files from previous deploys are fully removed, so a leftover scheduler-k3s kustomization directory no longer breaks following deploys. Pull request #9180
- Updates to app settings are serialized so concurrent commands no longer silently drop each other's changes or expose partially written values. Pull request #9172
- Resource:limit-clear and resource:reserve-clear without a process type now clear only their own resource type instead of every resource property. Pull request #9175
- The haproxy plugin's letsencrypt integration works again with recent EasyHAProxy, which is upgraded from 6.1.1 to 6.5.1. Pull request #9176
- Memory values with uppercase or other docker-supported units such as 1G, 512M or 1GiB are passed to docker unchanged, and the k3s scheduler interprets the same binary units. Pull request #9169
- Nginx-proxy-http-version can now be set globally or per app with dokku nginx:set instead of always being 1.1. Pull request #9152
- Alternate image tags are now read from the retired container, so images deployed via git:from-image are queued for retirement on hosts using the containerd image store. Pull request #9182
- The cleanup wrapper now forwards the forced cleanup flag, so dokku cleanup no longer treats an explicit request as automatic and honors skip-cleanup. Pull request #9128
- Scheduler-k3s:charts:set gains a whole-set form and clear for chart overrides, replacing one command per added, changed or removed property. Pull request #9190
Why it matters
This week's changes mostly target deploy reliability: locks are released on exit, leftover extraction directories no longer break subsequent deploys, and concurrent setting updates no longer lose changes. Several fixes restore behavior that users depend on, including the haproxy letsencrypt integration, per-type resource clearing, and consistent memory unit handling across schedulers. A new release, v0.38.32, packages fixes including deploy lock handling and forced cleanup forwarding.
Changelog entry
- Release v0.38.32 Release
- Release deploy locks on exit and honor apps:lock Pull request #9189
- Clean up stale extracted files on deploy Pull request #9180
- Serialize concurrent property updates Pull request #9172
- Only clear the requested resource type in resource clear commands Pull request #9175
- Fix haproxy letsencrypt integration and upgrade EasyHAProxy to 6.5.1 Pull request #9176
- Accept all docker memory units in resource values Pull request #9169
- Make nginx-proxy-http-version configurable per app or globally Pull request #9152
- Read alternate image tags from the retired container Pull request #9182
- Forward forced cleanup flag Pull request #9128
- Add whole-set form and clear for chart overrides Pull request #9190
- Fix pre-existing gofmt and markdown lint issues Pull request #9170
Dokku v0.38.32 is out. Deploy locks release on exit, failed deploys no longer leave stale extraction files behind, concurrent setting updates are serialized, resource clears only touch their own type, and haproxy letsencrypt works with current EasyHAProxy. Memory units like 1G an
Dokku v0.38.32 is out, with a set of fixes aimed at deploy reliability. Deploy locks are released and build records finalized whenever a deploy exits, and apps:lock now blocks as intended. Leftover extraction files from failed deploys are fully removed, so a stale scheduler-k3s kustomization directory no longer breaks the next deploy. Updates to app settings are serialized so concurrent commands no longer silently drop changes. resource:limit-clear and resource:reserve-clear now clear only their own resource type. The haproxy letsencrypt integration is fixed and EasyHAProxy is upgraded to 6.5.1. Memory values such as 1G, 512M and 1GiB are passed to docker unchanged with consistent binary units on the k3s scheduler, and nginx-proxy-http-version can be configured globally or per app.
Week of October 5, 2026
What shipped
- Cron entries can now set a per-entry MAILTO so scheduled tasks from plugins like datastore backups can be mailed individually instead of only to a global address. Pull request #9104
- Added the LibreDB Studio plugin to the community plugin list, which deploys a web database IDE and connects it to every postgres, mysql, mariadb, mongo and redis service on the host. Pull request #9116
- Fixed broken internal anchors and links in the docs after headings were renamed or moved. Pull request #9132
- Bumped herokuish from 0.11.18 to 0.11.19. Pull request #9125
- Fixed some typos in comments. Pull request #9119
Why it matters
This week improves cron scheduling by letting each entry have its own MAILTO, which matters for plugins that schedule tasks for specific resources like datastore backups. It also adds a community plugin for a web database IDE that connects to your services. Documentation link fixes make the docs easier to navigate.
Changelog entry
- Cron-entries: allow a per-entry MAILTO Pull request #9104
- Plugins: add LibreDB Studio to the community plugin list Pull request #9116
- Docs: fix broken internal anchors and links Pull request #9132
- Chore: bump herokuish to 0.11.19 Pull request #9125
- Chore: fix typos in comments Pull request #9119
This week: cron entries can set a per-entry MAILTO for tasks from plugins. Added LibreDB Studio to community plugins. Fixed doc anchors and bumped herokuish to 0.11.19.
This week in Dokku: cron entries now support a per-entry MAILTO address. That lets plugins like datastore backups schedule tasks and have their output mailed to the right place instead of only the global address. We also added the LibreDB Studio plugin to the community plugin list; it deploys a web database IDE and connects it to every postgres, mysql, mariadb, mongo and redis service on the host. On the docs side, we fixed broken internal anchors and links where headings had been renamed or moved. Finally, herokuish was bumped from 0.11.18 to 0.11.19.
Week of September 21, 2026
What shipped
- V0.38.31 released with fixes for node-sysctls image reporting, git command app verification, and run:logs argument validation. Release
- Procfile commands now use consistent shell quoting rules across deploy and dokku run, and bare shell operators are rejected with clear errors. Pull request #9077
- Storage:mount --replace now allows per-mount variation of ro flags and Docker mount options while keeping phase and volume settings consistent. Pull request #9074
- Storage attachment process types are now honored at deploy time, ensuring volumes mount only to their specified process type. Pull request #9069
- Global node-sysctls image report flags now distinguish between unset values and values set to the default. Pull request #9084
- Scheduler-k3s:node-sysctls:report now displays each scope's stored map separately from resolved values. Pull request #9075
- V0.38.30 released with storage:mount improvements and node-sysctls reporting enhancements. Release
- Documentation updated to reflect Ubuntu 26.04 as a supported installation target. Pull request #9070
Why it matters
V0.38.31 fixes critical issues with command parsing consistency and storage attachment scoping that affected deploy and runtime behavior. The fixes for Procfile quoting and shell operators ensure commands behave predictably, while storage improvements prevent volumes from being mounted to unintended process types.
Changelog entry
- V0.38.31 released Release
- Fixed node-sysctls image report flags to show stored values instead of defaults Pull request #9084
- Added app existence verification in git commands Pull request #9082
- Added run:logs argument validation Pull request #9081
- Added app directory check when creating new apps Pull request #9080
- Added app name validation in app-scoped commands Pull request #9079
- Procfile commands now use shell quoting rules consistently and reject bare shell operators Pull request #9077
- Added app.json healthcheck path and scheme validation Pull request #9076
- V0.38.30 released Release
- Storage:mount --replace now allows per-mount variation of ro and Docker mount options Pull request #9074
- Scheduler-k3s:node-sysctls:report now shows each scope's stored map separately Pull request #9075
- V0.38.29 released Release
- Documentation updated to list Ubuntu 26.04 as supported installation target Pull request #9070
- Storage attachment process types now honored at deploy time Pull request #9069
V0.38.31: Fixed Procfile quoting inconsistencies, storage attachment process type scoping, and node-sysctls reporting. Update via bootstrap script.
Dokku v0.38.31 is out. This release addresses Procfile command handling inconsistencies between deploy and runtime, ensures storage volumes respect their assigned process types, and improves node-sysctls configuration reporting. Upgrade via the bootstrap script.
Week of September 14, 2026
What shipped
- Release v0.38.28 with bug fixes for build records, build output, and git sync. Release
- Global flags like --quiet, --trace, --force and --app now work correctly with sudo-rs on Ubuntu 25.10 and later. Pull request #9060
- Storage plugin now supports whole-set form for mounting, allowing you to declare and sync an app's complete set of mounts in one command. Pull request #9058
- Scheduler-k3s metadata commands now support whole-set form for annotations, labels and node sysctls. Pull request #9051
- Dokku run under k3s scheduler now exits with the command's own exit status instead of always exiting 1 on failure. Pull request #9011
- Config commands now report write failures instead of silently exiting 0 when writes fail. Pull request #9049
- Process scaling now rejects negative process counts immediately instead of storing them for the scheduler to reject later. Pull request #9050
- Bootstrap installer now supports Ubuntu 26.04 LTS. Pull request #8791
- Storage mounts now check scheduler compatibility at mount time to prevent mismatched docker-local and k3s resources. Pull request #9010
- Registry plugin now exposes login state so you can check whether Dokku is logged in to a registry. Pull request #9057
Why it matters
This release focuses on fixing silent failures and improving reliability across multiple subsystems. Better error reporting in config operations, process scaling, and build output means issues surface immediately rather than causing cryptic failures downstream. Whole-set forms for storage and scheduler metadata reduce operational complexity when declaring infrastructure as code.
Changelog entry
- Preserve global flags when sudo is sudo-rs Pull request #9060
- Add a whole-set form for an app's storage mounts Pull request #9058
- Pass force to the datastore command that owns it Pull request #9062
- Call the datastore create command the way it is documented Pull request #9061
- Validate nginx templates as the running nginx user Pull request #9055
- Add a way to read back registry login state Pull request #9057
- Honor the pinned chart version when upgrading Pull request #9054
- Add a whole-set form for scheduler-k3s metadata Pull request #9051
- Propagate command exit code on dokku run Pull request #9011
- Report config write failures instead of exiting 0 Pull request #9049
- Reject negative process counts when scaling Pull request #9050
- Add Ubuntu 26.04 LTS to bootstrap supported versions Pull request #8791
- Discard the build record git:sync starts when nothing is built Pull request #9033
- Fix builds:output exiting 0 for unknown build ids Pull request #9035
- Reject scheduler mismatch at mount time Pull request #9010
Dokku v0.38.28 released. Fixes for sudo-rs compatibility, config write failures, docker run exit codes, and adds whole-set forms for storage and k3s metadata. Ubuntu 26.04 LTS now supported.
Dokku v0.38.28 is out with improvements across reliability and usability. Config commands now report write failures, dokku run returns correct exit codes on k3s, and storage/metadata operations support whole-set forms for better infrastructure-as-code workflows. Bootstrap now supports Ubuntu 26.04 LTS, and sudo-rs compatibility is fixed.