From ed0abb24656bf997641a87f397d674e04fd88547 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Mon, 29 Jun 2026 12:01:26 -0600 Subject: [PATCH] feat: enhance TLS certificate selection UI in AddDomain component (#4705) * feat: enhance TLS certificate selection UI in AddDomain component - Added descriptive FormDescriptions for different TLS certificate options (None, Let's Encrypt, Custom) to improve user understanding of certificate provisioning. - Updated placeholder text for the custom certificate resolver input field to provide clearer guidance on expected input format. This update enhances the user experience by providing contextual information directly within the form. * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --- .../application/domains/handle-domain.tsx | 42 ++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/apps/dokploy/components/dashboard/application/domains/handle-domain.tsx b/apps/dokploy/components/dashboard/application/domains/handle-domain.tsx index b232591e4..fef973ab2 100644 --- a/apps/dokploy/components/dashboard/application/domains/handle-domain.tsx +++ b/apps/dokploy/components/dashboard/application/domains/handle-domain.tsx @@ -763,6 +763,37 @@ export const AddDomain = ({ id, type, domainId = "", children }: Props) => { Custom + + {field.value === "none" && ( + <> + None serves TLS using any + certificate you created in the{" "} + + Certificates + {" "} + section whose CN/SAN matches this host — + Traefik selects it automatically via SNI. + + )} + {field.value === "letsencrypt" && ( + <> + Let's Encrypt auto-provisions + a certificate automatically for this host. + + )} + {field.value === "custom" && ( + <> + Custom uses a Traefik cert + resolver by name (defined in your static + configuration). + + )} + {!field.value && + "Select a certificate provider to see how TLS will be served for this host."} + ); @@ -777,10 +808,19 @@ export const AddDomain = ({ id, type, domainId = "", children }: Props) => { return ( Custom Certificate Resolver + + Enter the name of a Traefik + cert resolver defined in your static + configuration (e.g. letsencrypt) — + not certificate or private key content. To use a + certificate you pasted in the Certificates + section, choose None instead + and Traefik will match it by SNI. + {