Docker: Error de Let's Encrypt "Domain name contains an invalid character"

Esta documentación forma parte de la guía Enrutamiento HTTPS. Consulte la guía completa aquí: Cómo gestionar el enrutamiento HTTP y el cifrado TLS (HTTPS) en tus contenedores Docker.

Bienvenido a la documentación de Stackhero

Stackhero ofrece una plataforma Docker cloud CaaS (Containers as a Service) lista para usar, diseñada para despliegues de contenedores rápidos y fiables:

  • Despliegue en producción con un simple docker-compose up. No necesita configuración adicional: simplemente inicie sus contenedores.
  • Elija su propio nombre de dominio, asegurado automáticamente con HTTPS (por ejemplo: https://api.su-empresa.com, https://www.su-empresa.com o https://backoffice.su-empresa.com).
  • Disfrute de un alto rendimiento y una seguridad robusta sobre infraestructura privada y dedicada.
  • Aplique actualizaciones con un solo clic para un mantenimiento sencillo y sin complicaciones.

Puede tener sus contenedores en producción en unos cinco minutos. Stackhero gestiona la infraestructura, las actualizaciones y la seguridad por usted, para que pueda centrarse en el desarrollo de sus aplicaciones. Lea más sobre el alojamiento cloud Docker CaaS.

Al crear un subdominio, Let's Encrypt sigue las RFC 952 y 1123, que solo permiten caracteres en el conjunto [a-zA-Z0-9-].

Aunque los guiones bajos ('_') están permitidos en los nombres de registros DNS, no son aceptables en los nombres de host. Como resultado, Let's Encrypt rechaza subdominios como "my_subdomain.example.com" y muestra el error "Domain name contains an invalid character".

Para resolver este problema, simplemente elimina cualquier guion bajo de tus subdominios.