En este artículo detallo la arquitectura y el flujo de trabajo de la infraestructura que soporta este blog. Se trata de una solución robusta, escalable y automatizada que combina la flexibilidad de un CMS flat-file como Grav con la potencia de la virtualización moderna y el almacenamiento en red profesional.
El servidor opera sobre la última versión de soporte extendido (LTS) de Ubuntu, Noble Numbat. Esta elección garantiza:
Una de las piezas clave de esta arquitectura es el desacoplamiento de los datos y el motor de ejecución.
El despliegue se gestiona mediante contenedores, lo que facilita la portabilidad y el aislamiento.
services:
grav:
image: lscr.io/linuxserver/grav:latest
container_name: grav-cms
restart: unless-stopped
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Madrid
networks:
- proxy_network
volumes:
- ./config:/config
labels:
- "traefik.enable=true"
- "traefik.http.routers.grav.rule=Host(`antoniotirado.com`)"
- "traefik.http.routers.grav.tls.certresolver=letsencrypt"
El tráfico externo es gestionado por Traefik:
proxy_network.Dentro del contenedor, Nginx está ajustado para:
system/, vendor/, etc.).scheduler.log.config/www/backup/.Este despliegue representa un equilibrio entre sencillez para el autor y sofisticación técnica en la infraestructura, garantizando que el sitio sea rápido, seguro y fácil de mantener.