Despliegue de Devolutions Server en Azure App Service mediante un contenedor
Esta guía explica el despliegue de Devolutions Server en Azure App Service mediante un contenedor, lo que proporciona una plataforma totalmente gestionada con escalado automático, TLS integrado e integración con servicios de Azure.
Despliegue con Azure Portal
Requisitos previos
Una suscripción de Azure.
Azure CLI instalado:
az --version(o utilice Azure Cloud Shell).Acceso de administrador de SQL Server (para la creación de la base de datos).
Imagen de contenedor de Devolutions Server en un registro (Docker Hub o Azure Container Registry).
Crear una base de datos Azure SQL
Vaya al portal de Azure.
Haga clic en Crear un recurso y busque SQL Database – Crear.
En la pestaña Aspectos básicos, rellene los campos como se indica a continuación:
Suscripción
Seleccione su suscripción.
Grupo de recursos
Cree un nuevo grupo llamado rg-dvls-prod.
Nombre de la base de datos
Introduzca dvls.
Servidor
Haga clic en Crear nuevo y rellene los campos como se indica a continuación:
Nombre del servidor:
dvls-sql-server-<unique>. El nombre del servidor debe ser único globalmente.Ubicación: seleccione una región.
Autenticación: introduzca su autenticación SQL.
Inicio de sesión del administrador del servidor:
sqladmin.Contraseña: elija una contraseña segura.
Haga clic en Aceptar.
Entorno de carga de trabajo
Seleccione Producción.
Proceso + almacenamiento
Haga clic en Configurar base de datos y rellene los campos así:
Nivel de servicio: elija Estándar.
DTU: SO (10 DTU) para pruebas, 20+ DTU para producción.
Haga clic en Aplicar.
Después, en la pestaña Redes:
Método de conectividad
Seleccione Punto de conexión público.
Permitir servicios de Azure
Elija Sí, ya que es necesario para que App Service funcione.
Añadir IP de cliente actual
Elija Sí, ya que es necesario a efectos de gestión.
Y la pestaña Configuración adicional:
Usar datos existentes
Seleccione Ninguno.
Intercalación
Elija Predeterminada.
Haga clic en Revisar y crear – Crear y espere a que finalice el despliegue. Debería tardar entre 3 y 5 minutos.
Crear un usuario de base de datos para Devolutions Server
Vaya al Editor de consultas de su base de datos SQL e inicie sesión con las credenciales del administrador del servidor.
Ejecute la siguiente consulta SQL:
Crear un plan de App Service
Haga clic en Crear un recurso – Plan de App Service – Crear.
Rellene la pestaña Aspectos básicos como sigue:
Suscripción
Seleccione su suscripción.
Grupo de recursos
Introduzca el mismo que el de la base de datos: rg-dvls-prod.
Nombre
Introduzca asp-dvls-prod.
Sistema operativo
Seleccione el sistema operativo que desee.
Región
Introduzca la misma región que la elegida durante la configuración de la base de datos SQL.
Nivel de precios
Haga clic en Cambiar tamaño y, a continuación, elija los niveles de precios para:
Producción: POV3 (mínimo recomendado).
Desarrollo: B2 (nivel básico, coste más bajo).
Una vez tomada su decisión, haga clic en Aplicar.
Haga clic en Revisar y crear – Crear.
Crear el servicio de aplicaciones
Vaya a Crear un recurso – Aplicación web – Crear.
En la pestaña Aspectos básicos, rellene los campos como se muestra a continuación:
Suscripción
Seleccione su suscripción.
Grupo de recursos
Introduzca rg-dvls-prod, como antes.
Nombre
Introduzca dvls-prod-<unique>. Se convertirá en dvls-prod-<unique>.azurewebsites.net.
Publicar
Elija Contenedor.
Sistema operativo
Seleccione el sistema operativo que desee.
Región
Introduzca la misma región que para la base de datos SQL y el plan de App Service.
Plan de Linux
Seleccione asp-dvls-prod (creado durante la creación del plan de App Service).
Y la pestaña Contenedor:
Origen de la imagen
Elija Docker Hub o Azure Container Registry.
Imagen y etiqueta
Introduzca devolutions/devolutions-server:release-20XX.X (sustituya el número de versión por el más reciente).
Acceso al registro
Seleccione Público (para Docker Hub).
Haga clic en Revisar y crear – Crear y espere 2-3 minutos a que finalice el despliegue.
Una vez completado el despliegue, vaya a Configuración – ajustes Generales y active Always on. Esto evita que el contenedor quede inactivo y se inicie solo en respuesta a la primera solicitud entrante, lo que de otro modo puede parecer un fallo de inicio o de tiempo de espera.
Configurar los ajustes de la aplicación
Vaya a App Service – Configuración – Configuración de la aplicación.
Haga clic en Nueva configuración de la aplicación para cada variable:
DATABASE_ENCRYPT
true
Necesario para Azure SQL. Cifra la conexión SQL (TLS). Azure SQL siempre exige el cifrado, por lo que la conexión falla sin él.
DATABASE_HOST
dvls-sql-server-<unique>.database.windows.net
El nombre de host de su SQL Server.
DATABASE_NAME
dvls
El nombre de su base de datos.
DATABASE_USERNAME
dvls_user
El usuario SQL dedicado.
DATABASE_PASSWORD
YourSecurePassword123!
Utilice una referencia de Key Vault en producción.
WEB_SCHEME
http
Protocolo (App Service gestiona la terminación HTTPS).
PORT
5000
El puerto de escucha del contenedor.
DVLS_TELEMETRY
true
Habilitar la telemetría.
WEBSITES_PORT
5000
Específico de Azure (indica a App Service qué puerto reenviar).
Algunas nuevas aplicaciones web de Azure ahora tienen la compatibilidad con Sidecar habilitada por defecto. Cuando la compatibilidad con Sidecar está habilitada, WEBSITES_PORT se ignora. Deshabilite la compatibilidad con Sidecar para usar WEBSITES_PORT=5000 como se documenta, o déjela habilitada y establezca el puerto directamente en 5000.
Haga clic en Save y luego en Continue para confirmar el reinicio.
Inicializar Devolutions Server y recuperar la configuración de cifrado
Vaya a Configuration – Application settings.
Añada una nueva configuración:
Name:
DVLS_INITValue:
true
Haga clic en Save – Continue. Esto reinicia la aplicación.
En Monitoring, vaya a Log stream y espere de 1 a 2 minutos hasta que se complete la inicialización.
Habilite temporalmente el acceso SSH dirigiéndose a Development Tools – SSH y haciendo clic en Go.
Extraiga la configuración de cifrado:
Copie la salida base64.
Vaya a Configuration – Application settings – New application setting. Introduzca
DVLS_ENCRYPTION_CONFIG_B64en el campo Name y pegue el contenido del fichero base64 copiado durante el paso n.º 7 en el campo Value. Haga clic en OK.Busque la configuración
DVLS_INITy haga clic en Delete.Haga clic en Save y luego en Continue.
Vaya a Configuration – Application settings.
Añada una nueva configuración:
Name:
DVLS_INITValue:
true
Haga clic en Save – Continue. Esto reinicia la aplicación.
En Monitoring, vaya a Log stream y espere de 1 a 2 minutos hasta que se complete la inicialización.
Habilite temporalmente el acceso SSH dirigiéndose a Development Tools – SSH y haciendo clic en Go.
Extraiga la configuración de cifrado:
Copie la salida base64.
Vaya a Configuration – Application settings – New application setting. Introduzca
DVLS_ENCRYPTION_CONFIG_B64en el campo Name y pegue el contenido del fichero base64 copiado durante el paso n.º 7 en el campo Value. Haga clic en OK.Busque la configuración
DVLS_INITy haga clic en Delete.Haga clic en Save y luego en Continue.
Vaya a Configuration – Application settings.
Añada una nueva configuración:
Name:
DVLS_INITValue:
true
Haga clic en Save – Continue. Esto reinicia la aplicación.
En Monitoring, vaya a Log stream y espere de 1 a 2 minutos hasta que se complete la inicialización.
Habilite temporalmente el acceso SSH dirigiéndose a Development Tools – SSH y haciendo clic en Go.
Extraiga la configuración de cifrado:
Copie la salida base64.
Vaya a Configuration – Application settings – New application setting. Introduzca
DVLS_ENCRYPTION_CONFIG_B64en el campo Name y pegue el contenido del fichero base64 copiado durante el paso n.º 7 en el campo Value. Haga clic en OK.Busque la configuración
DVLS_INITy haga clic en Delete.Haga clic en Save y luego en Continue.
Acceder a Devolutions Server
Vaya a Overview – URL.
Haga clic en la URL o visite:
https://devolutions-server-prod-<unique>.azurewebsites.netInicie sesión con las credenciales predeterminadas:
Nombre de usuario:
dvls-adminContraseña:
dvls-admin
Inmediatamente después de iniciar sesión, cambie la contraseña predeterminada dirigiéndose a Administration – Users, haciendo clic en el botón de puntos suspensivos verticales del usuario dvls-admin y seleccionando Change password.
Implementación con Azure CLI
Azure CLI también está disponible para implementaciones automatizadas o repetibles.
Requisitos previos
Dominio personalizado y TLS
Añadir un dominio personalizado
Vaya a App Service – Custom domains – Add custom domain.
Introduzca su dominio:
devolutions-server.company.comSiga las instrucciones de configuración de DNS:
CNAME:
devolutions-server.company.com→devolutions-server-prod-<unique>.azurewebsites.net.O bien un registro A + registro TXT para el dominio apex.
Haga clic en Validate y luego en Add.
Añadir un certificado gestionado (gratuito y se renueva automáticamente)
Vaya a Certificates – Managed certificates – Add certificate.
Seleccione su dominio personalizado.
Haga clic en Validate y luego en Add.
Vaya a Custom domains, seleccione su dominio y haga clic en Add binding.
Para el Certificate, seleccione Managed certificate.
Para el TLS/SSL type, elija SNI SSL.
Haga clic en Add.
Forzar HTTPS
Vaya a Configuration – General settings.
Establezca HTTPS Only en On y haga clic en Save.
Monitorización
Habilitar Application Insights
Portal
Vaya a App Service – Application Insights – Turn on Application Insights.
Create new o Select existing para los recursos de Application Insights.
Haga clic en Apply.
CLI
Ver los registros
Transmitir los registros
Descargar los registros
Transmitir los registros
Descargar los registros
Transmitir los registros
Descargar los registros
Seguridad
Usar Azure Key Vault para los secretos
Habilite la Managed Identity:
Cree un Key Vault y almacene el secreto:
Conceda acceso:
Haga referencia en App Settings:
Habilite la Managed Identity:
Cree un Key Vault y almacene el secreto:
Conceda acceso:
Haga referencia en App Settings:
Habilite la Managed Identity:
Cree un Key Vault y almacene el secreto:
Conceda acceso:
Haga referencia en App Settings:
Véase también
Última actualización
¿Te fue útil?