Files
alexandrev-tibco 43ab3a6c04 Publicar la web en kotej.alexandre-vazquez.cloud
Arquitectura de siempre: estatico en el LXC 142 (nginx, puerto 8083) con NPM
delante para el TLS del wildcard, y CNAME kotej -> dyn en Namecheap. No hay
backend porque no hace falta: los ficheros no salen del navegador.

El CNAME se anadio releyendo la zona entera y reenviandola con el registro
nuevo — setHosts reemplaza toda la zona, y perder el MX o el DKIM por no
reenviarlos romperia el correo. Verificado que los 39 registros siguen ahi.

deploy.sh deja el despliegue repetible; borra el destino antes de extraer para
que los assets viejos no se acumulen.

Closes #8

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hEAYuHRKMYz9sSa9zmbzz
2026-07-31 20:59:08 +02:00

46 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
# Despliega la web de Kotej en kotej.alexandre-vazquez.cloud.
#
# Arquitectura: estatico puro en el LXC 142 (webserver, 192.168.1.202) servido
# por nginx en el puerto 8083, con NPM (LXC 109) delante para el TLS del
# wildcard. No hay backend: los ficheros se comparan en el navegador y nunca
# se suben, asi que no hay nada mas que servir.
#
# El vhost, el proxy host de NPM y el CNAME ya estan creados; esto solo
# actualiza el contenido.
set -euo pipefail
cd "$(dirname "$0")"
NODO=192.168.1.42 # payens: desde aqui se entra al LXC con pct
LXC=142
DESTINO=/var/www/kotej
SSH_KEY=~/.ssh/pxmanager
echo "==> build"
npm run build
echo "==> empaquetando"
TAR=$(mktemp -t kotej-dist).tgz
tar czf "$TAR" -C dist .
echo "==> subiendo a payens"
scp -q -i "$SSH_KEY" "$TAR" "root@$NODO:/tmp/kotej-dist.tgz"
rm -f "$TAR"
echo "==> desplegando en el LXC $LXC"
ssh -i "$SSH_KEY" "root@$NODO" bash -s <<EOF
set -e
pct push $LXC /tmp/kotej-dist.tgz /tmp/kotej-dist.tgz
# Se limpia primero: si no, los assets viejos (con otro hash) se acumularian
# para siempre.
pct exec $LXC -- sh -c 'rm -rf $DESTINO && mkdir -p $DESTINO \
&& tar xzf /tmp/kotej-dist.tgz -C $DESTINO && rm /tmp/kotej-dist.tgz'
rm -f /tmp/kotej-dist.tgz
EOF
echo "==> comprobando"
curl -fsS -o /dev/null -w " https://kotej.alexandre-vazquez.cloud -> %{http_code}\n" \
https://kotej.alexandre-vazquez.cloud/
echo "listo"