Despliegue de Azure CLI
Guía rápida para desplegar PKI Trust Manager en Azure Container Instances con Azure SQL Database.
🚀 Guía rápida de despliegue#
Despliegue PKI Trust Manager en Azure Container Instances usando su Azure SQL Database existente.
Lista de requisitos previos#
- ✅ Suscripción de Azure con acceso de colaborador
- ✅ Azure SQL Database ya aprovisionada
- ✅ Cadena de conexión SQL preparada (servidor, base de datos y credenciales)
- ✅ Azure CLI instalado (compruebe con
az --version)
📋 Despliegue paso a paso#
1. Iniciar sesión en Azure#
az login2. Crear un grupo de recursos (si hace falta)#
az group create \
--name pki-trust-manager-rg \
--location eastus3. Desplegar el contenedor PKI Trust Manager#
# Replace placeholders with your actual values
az container create \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--image securetron.azurecr.io/pkimain:latest \
--cpu 2 \
--memory 4 \
--ports 5228 \
--dns-name-label pki-trust-manager-$(date +%s) \
--environment-variables \
ASPNETCORE_ENVIRONMENT=Production \
ConnectionStrings__OurDBContext="Server=YOUR_SQL_SERVER.database.windows.net;Database=YOUR_DATABASE_NAME;User Id=YOUR_USERNAME;Password=YOUR_PASSWORD;MultipleActiveResultSets=true;TrustServerCertificate=True;" \
Environment__Mode=Cloud \
Authentication__DefaultSuperAdminUsername=superadmin \
Authentication__DefaultSuperAdminPassword="ChangeThisPassword123!" \
[email protected] \
Smtp__Server="mail.smtp2go.com" \
Smtp__Port=2525 \
Smtp__Auth=true \
Smtp__EnableSsl=true \
Smtp__Username="your-smtp-username" \
Smtp__Password="your-smtp-password" \
Licensing__OfflineMode=true \
--restart-policy Always4. Obtener la URL de la aplicación#
az container show \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--query "ipAddress.fqdn" \
--output tsv🔧 Configuración mínima necesaria#
Sustituya estos valores en el comando anterior:
1. Conexión a SQL Database#
# Your Azure SQL details:
Server=YOUR_SQL_SERVER.database.windows.net
Database=YOUR_DATABASE_NAME
User Id=YOUR_USERNAME
Password=YOUR_PASSWORD2. Credenciales de administrador#
Authentication__DefaultSuperAdminUsername=superadmin
Authentication__DefaultSuperAdminPassword="YourSecurePasswordHere"3. Configuración SMTP (opcional, pero recomendada)#
Smtp__Server="your-smtp-server.com"
Smtp__Username="your-username"
Smtp__Password="your-password"🎯 Script de despliegue de una línea#
Guarde este archivo como deploy-pki.sh:
#!/bin/bash
# Set your variables here
RESOURCE_GROUP="pki-trust-manager-rg"
LOCATION="eastus"
SQL_SERVER="your-sql-server.database.windows.net"
SQL_DATABASE="PKIDBEE"
SQL_USER="your-sql-username"
SQL_PASSWORD="your-sql-password"
ADMIN_PASSWORD="YourAdminPassword123!"
# Run deployment
az container create \
--resource-group $RESOURCE_GROUP \
--name pki-trust-manager \
--image securetron.azurecr.io/pkimain:latest \
--cpu 2 --memory 4 --ports 5228 \
--dns-name-label pki-trust-manager-$(date +%s) \
--environment-variables \
ConnectionStrings__OurDBContext="Server=$SQL_SERVER;Database=$SQL_DATABASE;User Id=$SQL_USER;Password=$SQL_PASSWORD;MultipleActiveResultSets=true;TrustServerCertificate=True;" \
Authentication__DefaultSuperAdminUsername=superadmin \
Authentication__DefaultSuperAdminPassword="$ADMIN_PASSWORD" \
[email protected] \
Licensing__OfflineMode=true \
--restart-policy Always
# Get the URL
echo "Your PKI Trust Manager is deployed at:"
az container show \
--resource-group $RESOURCE_GROUP \
--name pki-trust-manager \
--query "ipAddress.fqdn" \
--output tsvHaga que el script sea ejecutable y ejecútelo:
chmod +x deploy-pki.sh
./deploy-pki.sh✅ Pasos de verificación#
1. Comprobar el estado del despliegue#
az container show \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--query "provisioningState"2. Ver los registros del contenedor#
az container logs \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager3. Probar la aplicación#
# Get the FQDN
URL=$(az container show \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--query "ipAddress.fqdn" \
--output tsv)
# Test connection
curl http://$URL:5228/health🐛 Solución de problemas comunes#
Problema 1: "Image pull failed"#
# Check if you can pull the image
docker pull securetron.azurecr.io/pkimain:latestProblema 2: "Cannot connect to database"#
# Test SQL connectivity
az container exec \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--exec-command "ping YOUR_SQL_SERVER.database.windows.net"
# Check SQL firewall allows Azure services
# In Azure Portal: SQL Server → Firewalls and virtual networks → Allow Azure services = ONProblema 3: el contenedor se reinicia continuamente#
# Check detailed logs
az container logs \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--follow📊 Configuración posterior al despliegue#
1. Acceder a la aplicación#
- Vaya a:
http://YOUR_FQDN:5228 - Inicie sesión con:
- Username:
superadmin - Password:
[Your set password]
- Username:
2. Configuración inicial#
- Cambie la contraseña predeterminada del administrador.
- Configure los ajustes de la organización.
- Configure las autoridades de certificación.
- Configure las notificaciones por correo electrónico.
3. Habilitar HTTPS (opcional, pero recomendado)#
# Create an Application Gateway or use Azure Front Door
# This requires SSL certificates🗑️ Limpiar#
Elimine el despliegue cuando ya no lo necesite:
az container delete \
--resource-group pki-trust-manager-rg \
--name pki-trust-manager \
--yes📞 ¿Necesita ayuda?#
Soporte rápido#
- Consultar registros:
az container logs -g pki-trust-manager-rg -n pki-trust-manager - Verificar SQL: pruebe la conectividad desde Azure Portal.
- Comprobar estado del contenedor:
az container show -g pki-trust-manager-rg -n pki-trust-manager
Contactar con Securetron#
- Correo electrónico: [email protected]
- Documentación: https://securetron.net/documentation
- Comunidad: https://reddit.com/r/pki
Tiempo de despliegue: ~5 minutos
Coste estimado: ~$20-100/mes (Container + SQL)
Mantenimiento: automático con Azure Container Instances