From 0c37d7b3ee512d45018eaf72eba194aa79b2c3db Mon Sep 17 00:00:00 2001 From: vytenisstaugaitis <30520456+vytenisstaugaitis@users.noreply.github.com> Date: Thu, 9 Oct 2025 11:27:07 +0300 Subject: [PATCH 1/9] fix(notifications): prevent blank email field on dialog reopen --- .../dashboard/settings/notifications/handle-notifications.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/dokploy/components/dashboard/settings/notifications/handle-notifications.tsx b/apps/dokploy/components/dashboard/settings/notifications/handle-notifications.tsx index 325383069..f43ba51ca 100644 --- a/apps/dokploy/components/dashboard/settings/notifications/handle-notifications.tsx +++ b/apps/dokploy/components/dashboard/settings/notifications/handle-notifications.tsx @@ -208,10 +208,10 @@ export const HandleNotifications = ({ notificationId }: Props) => { }); useEffect(() => { - if (type === "email") { + if (type === "email" && fields.length === 0) { append(""); } - }, [type, append]); + }, [type, append, fields.length]); useEffect(() => { if (notification) { From ca6a93fdf6188e43c82d3b6cb9f944117936ffe6 Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Thu, 9 Oct 2025 16:09:13 +0200 Subject: [PATCH 2/9] feat: Bump default MongoDB docker image version to 7 The previous version of this file used `mongo:6` which reached EOL on July 1st 2025 More at : https://www.mongodb.com/legal/support-policy/lifecycles --- apps/dokploy/components/dashboard/project/add-database.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/dokploy/components/dashboard/project/add-database.tsx b/apps/dokploy/components/dashboard/project/add-database.tsx index 064e93544..c0600a2d9 100644 --- a/apps/dokploy/components/dashboard/project/add-database.tsx +++ b/apps/dokploy/components/dashboard/project/add-database.tsx @@ -55,7 +55,7 @@ import { api } from "@/utils/api"; type DbType = typeof mySchema._type.type; const dockerImageDefaultPlaceholder: Record = { - mongo: "mongo:6", + mongo: "mongo:7", mariadb: "mariadb:11", mysql: "mysql:8", postgres: "postgres:15", From fd5fa329643124d759b5dff4278d35bf518a57e6 Mon Sep 17 00:00:00 2001 From: Simon Loir Date: Sat, 11 Oct 2025 16:27:11 +0200 Subject: [PATCH 3/9] fix: load remote middleware on app delete if a serverId is provided --- packages/server/src/utils/traefik/middleware.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/server/src/utils/traefik/middleware.ts b/packages/server/src/utils/traefik/middleware.ts index 4897b94ee..730ea9b8c 100644 --- a/packages/server/src/utils/traefik/middleware.ts +++ b/packages/server/src/utils/traefik/middleware.ts @@ -46,8 +46,14 @@ export const deleteMiddleware = ( }; export const deleteAllMiddlewares = async (application: ApplicationNested) => { - const config = loadMiddlewares(); - const { security, appName, redirects } = application; + const { security, appName, redirects, serverId } = application; + let config: FileConfig; + + if (serverId) { + config = await loadRemoteMiddlewares(serverId); + } else { + config = loadMiddlewares(); + } if (config.http?.middlewares) { if (security.length > 0) { @@ -62,8 +68,8 @@ export const deleteAllMiddlewares = async (application: ApplicationNested) => { } } - if (application.serverId) { - await writeTraefikConfigRemote(config, "middlewares", application.serverId); + if (serverId) { + await writeTraefikConfigRemote(config, "middlewares", serverId); } else { writeMiddleware(config); } From 7988de64c85c55d2b40fae7985421b1f4081fa08 Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Sat, 11 Oct 2025 14:32:31 +0000 Subject: [PATCH 4/9] [autofix.ci] apply automated fixes --- packages/server/src/utils/traefik/middleware.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/server/src/utils/traefik/middleware.ts b/packages/server/src/utils/traefik/middleware.ts index 730ea9b8c..5a9d28805 100644 --- a/packages/server/src/utils/traefik/middleware.ts +++ b/packages/server/src/utils/traefik/middleware.ts @@ -49,11 +49,11 @@ export const deleteAllMiddlewares = async (application: ApplicationNested) => { const { security, appName, redirects, serverId } = application; let config: FileConfig; - if (serverId) { - config = await loadRemoteMiddlewares(serverId); - } else { - config = loadMiddlewares(); - } + if (serverId) { + config = await loadRemoteMiddlewares(serverId); + } else { + config = loadMiddlewares(); + } if (config.http?.middlewares) { if (security.length > 0) { From 883e9f0fd1a1a40a62fd2c0db19ce1b2f4558edf Mon Sep 17 00:00:00 2001 From: Rodrigo Santos Date: Sat, 11 Oct 2025 19:20:46 +0100 Subject: [PATCH 5/9] fix: profile picture fit --- .../components/dashboard/impersonation/impersonation-bar.tsx | 1 + apps/dokploy/components/layouts/user-nav.tsx | 1 + 2 files changed, 2 insertions(+) diff --git a/apps/dokploy/components/dashboard/impersonation/impersonation-bar.tsx b/apps/dokploy/components/dashboard/impersonation/impersonation-bar.tsx index 7804e9add..a5aae598c 100644 --- a/apps/dokploy/components/dashboard/impersonation/impersonation-bar.tsx +++ b/apps/dokploy/components/dashboard/impersonation/impersonation-bar.tsx @@ -281,6 +281,7 @@ export const ImpersonationBar = () => {
diff --git a/apps/dokploy/components/layouts/user-nav.tsx b/apps/dokploy/components/layouts/user-nav.tsx index e476a5f50..ca5854196 100644 --- a/apps/dokploy/components/layouts/user-nav.tsx +++ b/apps/dokploy/components/layouts/user-nav.tsx @@ -44,6 +44,7 @@ export const UserNav = () => { > From d0fd8e7c72e0e3abc3495b268baa1709d8356592 Mon Sep 17 00:00:00 2001 From: randomperson12344 <4dennisk@gmail.com> Date: Sun, 12 Oct 2025 20:59:52 -0700 Subject: [PATCH 6/9] fix: correct typos --- .../application/general/generic/save-bitbucket-provider.tsx | 2 +- .../application/general/generic/save-github-provider.tsx | 2 +- .../application/general/generic/save-gitlab-provider.tsx | 2 +- apps/dokploy/components/dashboard/compose/delete-service.tsx | 2 +- .../compose/general/generic/save-bitbucket-provider-compose.tsx | 2 +- .../compose/general/generic/save-github-provider-compose.tsx | 2 +- .../compose/general/generic/save-gitlab-provider-compose.tsx | 2 +- apps/dokploy/pages/register.tsx | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/apps/dokploy/components/dashboard/application/general/generic/save-bitbucket-provider.tsx b/apps/dokploy/components/dashboard/application/general/generic/save-bitbucket-provider.tsx index 6f6db5dd1..1f54ddd58 100644 --- a/apps/dokploy/components/dashboard/application/general/generic/save-bitbucket-provider.tsx +++ b/apps/dokploy/components/dashboard/application/general/generic/save-bitbucket-provider.tsx @@ -150,7 +150,7 @@ export const SaveBitbucketProvider = ({ applicationId }: Props) => { enableSubmodules: data.enableSubmodules || false, }) .then(async () => { - toast.success("Service Provided Saved"); + toast.success("Service Provider Saved"); await refetch(); }) .catch(() => { diff --git a/apps/dokploy/components/dashboard/application/general/generic/save-github-provider.tsx b/apps/dokploy/components/dashboard/application/general/generic/save-github-provider.tsx index 9a4b92ce1..80d6850ca 100644 --- a/apps/dokploy/components/dashboard/application/general/generic/save-github-provider.tsx +++ b/apps/dokploy/components/dashboard/application/general/generic/save-github-provider.tsx @@ -149,7 +149,7 @@ export const SaveGithubProvider = ({ applicationId }: Props) => { enableSubmodules: data.enableSubmodules, }) .then(async () => { - toast.success("Service Provided Saved"); + toast.success("Service Provider Saved"); await refetch(); }) .catch(() => { diff --git a/apps/dokploy/components/dashboard/application/general/generic/save-gitlab-provider.tsx b/apps/dokploy/components/dashboard/application/general/generic/save-gitlab-provider.tsx index cb7209f8a..d6f65caf3 100644 --- a/apps/dokploy/components/dashboard/application/general/generic/save-gitlab-provider.tsx +++ b/apps/dokploy/components/dashboard/application/general/generic/save-gitlab-provider.tsx @@ -167,7 +167,7 @@ export const SaveGitlabProvider = ({ applicationId }: Props) => { enableSubmodules: data.enableSubmodules, }) .then(async () => { - toast.success("Service Provided Saved"); + toast.success("Service Provider Saved"); await refetch(); }) .catch(() => { diff --git a/apps/dokploy/components/dashboard/compose/delete-service.tsx b/apps/dokploy/components/dashboard/compose/delete-service.tsx index e75aad5e5..5c8577dff 100644 --- a/apps/dokploy/components/dashboard/compose/delete-service.tsx +++ b/apps/dokploy/components/dashboard/compose/delete-service.tsx @@ -104,7 +104,7 @@ export const DeleteService = ({ id, type }: Props) => { push( `/dashboard/project/${result?.environment?.projectId}/environment/${result?.environment?.environmentId}`, ); - toast.success("deleted successfully"); + toast.success("Service deleted successfully"); setIsOpen(false); }) .catch(() => { diff --git a/apps/dokploy/components/dashboard/compose/general/generic/save-bitbucket-provider-compose.tsx b/apps/dokploy/components/dashboard/compose/general/generic/save-bitbucket-provider-compose.tsx index d2a5d622a..06c88fff4 100644 --- a/apps/dokploy/components/dashboard/compose/general/generic/save-bitbucket-provider-compose.tsx +++ b/apps/dokploy/components/dashboard/compose/general/generic/save-bitbucket-provider-compose.tsx @@ -152,7 +152,7 @@ export const SaveBitbucketProviderCompose = ({ composeId }: Props) => { enableSubmodules: data.enableSubmodules, }) .then(async () => { - toast.success("Service Provided Saved"); + toast.success("Service Provider Saved"); await refetch(); }) .catch(() => { diff --git a/apps/dokploy/components/dashboard/compose/general/generic/save-github-provider-compose.tsx b/apps/dokploy/components/dashboard/compose/general/generic/save-github-provider-compose.tsx index fa7f40b96..5ad950e4c 100644 --- a/apps/dokploy/components/dashboard/compose/general/generic/save-github-provider-compose.tsx +++ b/apps/dokploy/components/dashboard/compose/general/generic/save-github-provider-compose.tsx @@ -151,7 +151,7 @@ export const SaveGithubProviderCompose = ({ composeId }: Props) => { triggerType: data.triggerType, }) .then(async () => { - toast.success("Service Provided Saved"); + toast.success("Service Provider Saved"); await refetch(); }) .catch(() => { diff --git a/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx b/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx index 9ace74ff6..933abd1a2 100644 --- a/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx +++ b/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx @@ -160,7 +160,7 @@ export const SaveGitlabProviderCompose = ({ composeId }: Props) => { enableSubmodules: data.enableSubmodules, }) .then(async () => { - toast.success("Service Provided Saved"); + toast.success("Service Provider Saved"); await refetch(); }) .catch(() => { diff --git a/apps/dokploy/pages/register.tsx b/apps/dokploy/pages/register.tsx index 60a3d8de4..4452eb1ea 100644 --- a/apps/dokploy/pages/register.tsx +++ b/apps/dokploy/pages/register.tsx @@ -101,7 +101,7 @@ const Register = ({ isCloud }: Props) => { setIsError(true); setError(error.message || "An error occurred"); } else { - toast.success("User registered successfuly", { + toast.success("User registered successfully", { duration: 2000, }); if (!isCloud) { From b3cec533f9b167908cb6c5fe8918968321350acc Mon Sep 17 00:00:00 2001 From: Jupi Date: Wed, 15 Oct 2025 04:50:53 +0300 Subject: [PATCH 7/9] fix: resources tooltips triggers form submission --- .../dashboard/application/advanced/show-resources.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx b/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx index 25040067b..65616468f 100644 --- a/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx +++ b/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx @@ -150,7 +150,7 @@ export const ShowResources = ({ id, type }: Props) => { render={({ field }) => { return ( -
+
e.preventDefault()}> Memory Limit @@ -182,7 +182,7 @@ export const ShowResources = ({ id, type }: Props) => { name="memoryReservation" render={({ field }) => ( -
+
e.preventDefault()}> Memory Reservation @@ -215,7 +215,7 @@ export const ShowResources = ({ id, type }: Props) => { render={({ field }) => { return ( -
+
e.preventDefault()}> CPU Limit @@ -249,7 +249,7 @@ export const ShowResources = ({ id, type }: Props) => { render={({ field }) => { return ( -
+
e.preventDefault()}> CPU Reservation From 5fd39843f73073b2c6a7f984283bc8604909aa2c Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Thu, 16 Oct 2025 03:56:14 +0000 Subject: [PATCH 8/9] [autofix.ci] apply automated fixes --- .../application/advanced/show-resources.tsx | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx b/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx index 65616468f..3beedcdbc 100644 --- a/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx +++ b/apps/dokploy/components/dashboard/application/advanced/show-resources.tsx @@ -150,7 +150,10 @@ export const ShowResources = ({ id, type }: Props) => { render={({ field }) => { return ( -
e.preventDefault()}> +
e.preventDefault()} + > Memory Limit @@ -182,7 +185,10 @@ export const ShowResources = ({ id, type }: Props) => { name="memoryReservation" render={({ field }) => ( -
e.preventDefault()}> +
e.preventDefault()} + > Memory Reservation @@ -215,7 +221,10 @@ export const ShowResources = ({ id, type }: Props) => { render={({ field }) => { return ( -
e.preventDefault()}> +
e.preventDefault()} + > CPU Limit @@ -249,7 +258,10 @@ export const ShowResources = ({ id, type }: Props) => { render={({ field }) => { return ( -
e.preventDefault()}> +
e.preventDefault()} + > CPU Reservation From ceb4cc453eed0dc017888cd09cc4b2b05724646c Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Wed, 15 Oct 2025 22:09:25 -0600 Subject: [PATCH 9/9] feat: add LambdaTest sponsorship to README --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 8faf22a35..d60962cff 100644 --- a/README.md +++ b/README.md @@ -77,6 +77,10 @@ For detailed documentation, visit [docs.dokploy.com](https://docs.dokploy.com).
Hostinger LX Aer + + + +