Releases: Dokploy/dokploy
v0.29.2
What's Changed
- fix(schedule): add authz checks for server and host-level schedules by @Siumauricio in #4279
- Fix/ghsa f8wj 5c4w frhg cross org idor by @Siumauricio in #4298
- fix: drop .zip deployment - isDate is not a function by @NomisCZ in #4129
- feat: implement invitation email functionality for organization creation by @Siumauricio in #4302
- fix: stop leaking Drizzle SQL queries in webhook error responses (#4276) by @sajdakabir in #4281
- fix: filter requests by hostname instead of path by @manalkaff in #4255
- fix: fallback to DownstreamStatus when OriginStatus is 0 in requests table by @Siumauricio in #4303
New Contributors
- @NomisCZ made their first contribution in #4129
- @sajdakabir made their first contribution in #4281
Full Changelog: v0.29.1...v0.29.2
v0.29.1
What's Changed
- style: Fix typo in custom entrypoint description by @sancho1952007 in #4241
- feat: add dashboard home page by @Siumauricio in #4244
- fix: preview deployments broken on v0.29.0 — postgres 100-arg limit by @colocated in #4257
New Contributors
- @sancho1952007 made their first contribution in #4241
- @colocated made their first contribution in #4257
Full Changelog: v0.29.0...v0.29.1
v0.29.0
Features
AI Log & Build Error Analysis
Debugging deployments just got a lot easier. Dokploy now includes AI-powered analysis for container logs and build errors directly from the dashboard. When a deployment fails or a container is misbehaving, you can trigger an AI analysis that reads through the logs and gives you a clear summary of what went wrong and how to fix it.
MCP Server & CLI
The https://github.com/Dokploy/mcp exposes 508 tools across 49 categories, allowing any MCP-compatible client to interact with your Dokploy instance. Works with Claude Desktop, Cursor, VS Code, Windsurf, Zed, and more.
The CLI https://github.com/Dokploy/cli provides 449 commands to manage your Dokploy server from the terminal. Install it globally and authenticate with your API key to get started.
Shared Git Providers
Managing git providers across teams has always required each member to configure their own credentials. With v0.29.0, administrators can now share their git providers (GitHub, GitLab, Gitea, Bitbucket) with the entire organization.
Enterprise Features
- Assign Specific Git Providers to specific users
- Enterprise users can now assign specific remote servers to individual team members. This gives administrators granular control over which servers each user can deploy to, improving security and resource isolation across your organization.
Non-Root Multi Server Support
Setting up remote servers previously required connecting as the root user. With this release, Dokploy now supports non-root users with passwordless sudo access for multi-server setups.
New Libsql Database
We've added LibSQL as a new first-class database type in Dokploy. LibSQL is the open-source fork of SQLite designed for server use cases, and now you can deploy and manage it just like any other database in Dokploy.
What's Changed
- feat: enhance web server update process with health checks by @Siumauricio in #4033
- feat: expose drop deployment endpoint in public API by @fdarian in #3923
- feat(ui): Add Vercel-style breadcrumb navigation with project and service switchers by @imran-vz in #3716
- fix: prevent unhandled rejection in trustedOrigins on DB failure by @RchrdHndrcks in #4004
- feat: add project tags for organizing services by @cucumber-sp in #3706
- feat: add libSQL database by @OliverGeneser in #2601
- feat: add automatic Rancher Desktop support for Docker socket detection by @sueffuenfelf in #2681
- feat(servers): enhance server setup and validation for user privileges by @Siumauricio in #4059
- feat: add mattermost notification provider by @hoootan in #2728
- feat(docker): implement container removal functionality by @Siumauricio in #4065
- fix: Remove .sql for mongo backup file name by @MichalMaciejKowal in #2753
- feat(destinations): add additionalFlags field for destination settings by @Siumauricio in #4092
- feat(notification): add volumeBackup parameter to notification creati… by @Siumauricio in #4093
- refactor(traefik): improve config removal logic and error handling by @Siumauricio in #4115
- feat[notifications]: Add Dokploy Backup notification type support by @WalidDevIO in #2907
- feat(git-provider): enhance sharing and permissions management by @Siumauricio in #4135
- fix: sort schedules by name in list query by @dpulpeiro in #4125
- fix(subscriptions): set done=true when deployment/restore completes so the while loop can exit by @mixelburg in #4128
- Update gitea.ts by @impcyber in #4067
- fix(git-provider): use internal URLs for Gitea and GitLab repository … by @Siumauricio in #4136
- fix: typos, grammar, spelling, style & format by @nktnet1 in #4104
- feat(certificates): enhance certificate view by @faytranevozter in #3287
- feat: add support for custom entry point by @KarpachMarko in #2863
- feat: add password manager compatible OTP input component by @leofilmon in #2953
- Feat : Fix backup file naming for Windows 11 compatibility (#2955) by @Harikrishnan1367709 in #2956
- feat: Add web UI file upload to Docker containers (#2920) by @Harikrishnan1367709 in #2959
- feat: add grid/table view toggle for domains page by @quochuydev in #3159
- feat(dashboard): enhance monitoring charts with new Docker disk usage… by @Siumauricio in #4142
- feat: be able to bookmark templates by @Bima42 in #2936
- fix: update regex to allow number at the end of app name by @Bima42 in #3348
- feat: be able to edit certificate by @Bima42 in #3350
- feat(database-credentials): add password update functionality for Mar… by @Siumauricio in #4144
- chore(databases): update mongodb version, to patch latest cve by @stripsior in #3386
- feat: add configurable middlewares for domains by @david-dev-de in #3374
- fix(postgres): add default StopGracePeriod to prevent WAL corruption by @OthmanHaba in #3607
- Feat/application icon upload by @Statsly-org in #3611
- feat(swarm): add container breakdown by node with live metrics by @physikal in #3633
- feat: add credentials-based user provisioning alongside invitation flow by @mhbdev in #3687
- fix: use event.code instead of event.key for keyboard shortcuts by @xob0t in #3748
- feat: classify logs based on HTTP statusCode by @difagume in #3764
- fix: resolve OpenAPI 500 error caused by BigInt serialization by @vcode-sh in #3794
- fix: set FailureAction=rollback for swarm services default UpdateConfig by @jaimehgb in #3810
- fix: Replace tooltip trigger button for help icon (provider compose ui) by @naturedamends in #3902
- feat: add accessedServers permission handling and server access valid… by @Siumauricio in #4156
- feat: add isEnterpriseCloud field and update billing logic by @Siumauricio in #4158
- fix: Broken install instructions by @AlexDev404 in #3937
- feat: show only used disk space in server monitoring chart by @lasseveenliese in #3949
- feat: add RHEL flavors to server setup script by @snitramodranoel in #4037
- fix: validate invitation email matches signup email by @Siumauricio in #4159
- fix: extractImageTag misidentifies registry port as tag by @Siumauricio in #4160
- fix: compose patches overwritten by domain injection by @Siumauricio in #4161
- fix: actions in slack notification by @vincent-tarrit in #4054
- fix: replace deprecated Slack actions with mrkdwn link field by @Siumauricio in #4163
- fix: correct permission checks for compose loadServices and env editing by @Siumauricio in #4164
- fix: surface actual error message in ntfy test connection by @Siumauricio in #4165
- feat: add tooltip to Daily Docker Cleanup toggle by @Siumauricio in #4166
- fix: add authSource and directConnection params to MongoDB connection URLs by @manalkaff in #4112
- fix: start server listener before initialization to prevent...
v0.28.8
What's Changed
- feat: update apikey schema and relationships by @Siumauricio in #4028
Full Changelog: v0.28.7...v0.28.8
v0.28.7
What's Changed
- fix: invalidate notification.one query cache on update by @desen94 in #3967
- chore: update better-auth dependencies to version 1.5.4 and refactor … by @Siumauricio in #3969
- feat: add comprehensive permission tests and enhance permission check… by @Siumauricio in #4009
- fix: prevent Watch Paths tooltip button from submitting the form by @azizbecha in #3977
- 3979 collapsed sidebar state has usability and visual issues by @Siumauricio in #4012
- feat: add optional dockerImage field to database schemas by @Siumauricio in #4013
- fix: exclude volume-backups from web server backup rsync command by @Siumauricio in #4015
- fix: handle optional authConfig in mechanizeDockerContainer function by @Siumauricio in #4016
- fix(volume-backups): restart container before S3 upload in volume backup by @WalidDevIO in #4001
- fix: truncate error message in backup notifications to 1010 characters by @Siumauricio in #4023
New Contributors
- @desen94 made their first contribution in #3967
- @azizbecha made their first contribution in #3977
- @WalidDevIO made their first contribution in #4001
Full Changelog: v0.28.6...v0.28.7
v0.28.6
What's Changed
- Feat/add new whitelabeling by @Siumauricio in #3959
- feat: add support for 'labeled' action in GitHub deployment handler by @Siumauricio in #3960
- feat: update Docker configuration to use DOKPLOY environment variables by @Siumauricio in #3962
- feat(deployments): Add option to copy webhook url by clicking on it by @jirkavrba in #3952
Full Changelog: v0.28.5...v0.28.6
v0.28.5
What's Changed
- Update dependencies in pnpm-lock.yaml and package.json for @codemirro… by @Siumauricio in #3912
- fix: update Docker network creation command to specify driver for sta… by @Siumauricio in #3913
- refactor: update Gitea and GitLab URL handling to prioritize internal… by @Siumauricio in #3914
- fix: add error handling for volume backup notification sending by @Siumauricio in #3915
- refactor: streamline deployment cleanup by consolidating removeLastTe… by @Siumauricio in #3917
- refactor: enhance volume backup path handling to ensure proper prefix… by @Siumauricio in #3918
- refactor: update backup file paths to include app name for better org… by @Siumauricio in #3919
- fix: prevent doubled /v1/ suffix in Azure OpenAI-compatible URLs by @Siumauricio in #3920
- feat: include backup file in restoreComposeBackup function for improv… by @Siumauricio in #3921
- feat: add maxAliasCount option to parse function for improved Docker … by @Siumauricio in #3930
- refactor: replace authClient with api.user.session.useQuery in multip… by @Siumauricio in #3931
- Feat/use appname on backups folder by @Siumauricio in #3934
- fix: update success message for service deployment to reflect queued … by @Siumauricio in #3939
- fix: improve port conflict detection by enhancing error messages and … by @Siumauricio in #3940
- fix: enhance container metrics query to support wildcard matching for… by @Siumauricio in #3947
- fix: add error handling to trusted origins retrieval in admin service by @Siumauricio in #3951
Full Changelog: v0.28.4...v0.28.5
v0.28.4
What's Changed
- refactor: replace authClient with api.organization.active for active … by @Siumauricio in #3880
- refactor: simplify createMount mutation by returning the promise dire… by @Siumauricio in #3881
- fix: update rsync command in web-server backup to exclude special fil… by @Siumauricio in #3893
- fix: add docker login before rollback and fix execAsyncRemote argument order by @aak-lear in #3882
- feat: enhance Docker configuration with environment variables for API… by @Siumauricio in #3894
- feat: add enableSubmodules and update watchPaths in application schema by @Siumauricio in #3898
- fix: skip redirect middleware for preview deployments to prevent wild… by @Siumauricio in #3899
New Contributors
Full Changelog: v0.28.3...v0.28.4
v0.28.3
What's Changed
- feat: add search functionality across multiple routers with member ac… by @Siumauricio in #3846
- feat: enhance project and environment services with additional column… by @Siumauricio in #3857
- feat: enhance request logging display with formatted status and duration by @Siumauricio in #3859
- fix: Fixed service card behavior #3837 by @lklacar in #3838
- Feat/show org deployment level by @Siumauricio in #3868
New Contributors
Full Changelog: v0.28.2...v0.28.3
v0.28.2
What's Changed
- fix: handle optional chaining for organization and user IDs in GitHub… by @Siumauricio in #3834
- refactor: simplify domain handling in Docker compose utility functions by @Siumauricio in #3835
- Fix/improve loading queries by @Siumauricio in #3844
Full Changelog: v0.28.1...v0.28.2