Tus Sitios Web
Administra tus aplicaciones alojadas en Kubernetes.
Lista de Despliegues
Arquitectura del Sistema
Referencia técnica completa del stack, APIs y flujos de despliegue.
Infraestructura de Servidores
157.137.222.137ubuntu — Oracle75.119.139.218launcherhttps://registry.purelyhost.comkube-systempurelyhost-comTraefik · SSL: Let's EncryptwebConvenciones de Naming
| Contexto | Formato | Ejemplo |
|---|---|---|
| Dominio del usuario | FQDN con puntos | lucymortonbeauty.com |
| Docker Registry path | purelyhost/{FQDN} | purelyhost/lucymortonbeauty.com |
| Docker image tag | Timestamp Unix | 1783971644 |
| K3s Deployment/Service/Ingress | puntos → guiones | lucymortonbeauty-com |
| K3s Container name | siempre web | web |
Referencia de API REST
Base URL: https://panel.purelyhost.com/api/ · Auth: Authorization: Bearer {token} · Backend: Paulet:5000
Rangos de Puertos por Tecnología
Flujo de Despliegue
Dominio FQDN (regex) + puerto según rango de tecnología — sin llamada al servidor
XHR multipart POST /api/deploy con progreso de upload en tiempo real
unzip -q -o en /tmp/{uuid}/ · genera Dockerfile automático por tecnología
docker buildx build --platform linux/amd64 -t registry.purelyhost.com/purelyhost/{domain}:{timestamp} --push
kubectl apply Deployment + Service + Ingress en namespace purelyhost-com · Si activate=false: solo imagen en registry, K3s intacto
Frontend hace polling cada 2s → tarjeta muestra pasos → verde ✓ al completar · Rollback automático en error
Flujo de Versiones (Docker Registry)
1. Panel llama GET /api/versions?domain=lucymortonbeauty.com
2. Backend consulta https://registry.purelyhost.com/v2/purelyhost/{domain}/tags/list
3. Backend obtiene imagen activa de K3s: kubectl get deployment {safe_domain} -o jsonpath='{...image}'
4. Retorna JSON con tags (timestamps Unix) y flag active: true/false
5. Frontend formatea timestamp → "Imagen: 13/7/2026, 14:22"
Al activar: POST /api/rollback?domain=...&revision={tag} → kubectl set image deployment/{safe_domain} web=registry.../{domain}:{tag}
Pipeline de Actualización del Panel (scripts/deploy.sh)
# Ejecutar desde Windows:
& "C:\Program Files\Git\bin\bash.exe" scripts/deploy.sh
1. Lee .version → incrementa PATCH → guarda en .version
2. Inyecta <div> flotante con versión en esquina inferior derecha de todos los HTML
3. SCP frontend/ → Malinowski(/tmp/) → Paulet(/tmp/panel_build/)
4. docker buildx build -t registry.purelyhost.com/purelyhost/panel:{timestamp} --push
5. kubectl set image deployment/purelyhost-panel
6. SCP backend/engine.cpp + start_engine.sh → Paulet /home/launcher/
7. g++ engine.cpp -o engine_cpp -O3 -lpthread -luuid
8. ./start_engine.sh (mata proceso anterior, relanza en background)
Bases de Datos
Gestión de bases de datos MariaDB por dominio.
Subir/Crear Base de Datos
Bases de Datos Aprovisionadas
| Dominio Asociado | Base de Datos | Usuario | Host (GRIEVE) | Estado | Acciones |
|---|
Ansible & Servidores
Gestión y aprovisionamiento desde Habich.
Editor de Playbooks YAML
Instalar/Reinstalar GRIEVE
Ejecuta el playbook principal que configura MariaDB, Fail2Ban y los accesos de seguridad. Se ejecutará automáticamente desde Habich conectando hacia GRIEVE.
Terminal de Ejecución
Esperando ejecución...
Gestión de SSL (Let's Encrypt)
Activa y supervisa tus certificados seguros automatizados.