lanzar-alloy.sh
· 2.3 KiB · Bash
Ham
#!/usr/bin/env bash
# ═══════════════════════════════════════════════════════════════════════════
# lanzar-alloy.sh — Script de demo para el Episodio #834
# Lanza alloy con Docker Compose en 10 segundos
# ═══════════════════════════════════════════════════════════════════════════
set -e
VERDE='\033[0;32m'
AMARILLO='\033[1;33m'
ROJO='\033[0;31m'
AZUL='\033[0;34m'
NC='\033[0m'
echo -e "${AZUL}╔══════════════════════════════════════════════════════════════╗${NC}"
echo -e "${AZUL}║ 🚀 alloy — Dashboard Docker en tiempo real ║${NC}"
echo -e "${AZUL}║ Episodio #834 — atareao con Linux ║${NC}"
echo -e "${AZUL}╚══════════════════════════════════════════════════════════════╝${NC}"
echo ""
# 1. Comprobar prerequisitos
echo -e "${AMARILLO}🔍 Comprobando prerequisitos...${NC}"
if command -v docker &> /dev/null; then
echo -e " ${VERDE}✅ Docker encontrado${NC}"
DOCKER_CMD="docker"
elif command -v podman &> /dev/null; then
echo -e " ${VERDE}✅ Podman encontrado${NC}"
DOCKER_CMD="podman"
else
echo -e " ${ROJO}❌ Ni Docker ni Podman están instalados${NC}"
exit 1
fi
# 2. Comprobar variables OIDC
echo -e "${AMARILLO}🔐 Comprobando configuración OIDC...${NC}"
if [ -f .env ]; then
source .env
fi
MISSING=0
for var in OIDC_ISSUER_URL OIDC_CLIENT_ID OIDC_CLIENT_SECRET OIDC_REDIRECT_URL; do
if [ -z "${!var}" ]; then
echo -e " ${ROJO}❌ Variable $var no configurada${NC}"
MISSING=1
fi
done
if [ $MISSING -eq 1 ]; then
echo -e "${ROJO}❌ OIDC es OBLIGATORIO. alloy no arranca sin las 4 variables.${NC}"
exit 1
fi
# 3. Preparar directorio y arrancar
DIR="/opt/alloy"
sudo mkdir -p "$DIR/data"
cd "$DIR"
sudo $DOCKER_CMD compose up -d
echo -e "${VERDE}✅ alloy está corriendo en http://localhost:3066${NC}"
| 1 | #!/usr/bin/env bash |
| 2 | # ═══════════════════════════════════════════════════════════════════════════ |
| 3 | # lanzar-alloy.sh — Script de demo para el Episodio #834 |
| 4 | # Lanza alloy con Docker Compose en 10 segundos |
| 5 | # ═══════════════════════════════════════════════════════════════════════════ |
| 6 | |
| 7 | set -e |
| 8 | |
| 9 | VERDE='\033[0;32m' |
| 10 | AMARILLO='\033[1;33m' |
| 11 | ROJO='\033[0;31m' |
| 12 | AZUL='\033[0;34m' |
| 13 | NC='\033[0m' |
| 14 | |
| 15 | echo -e "${AZUL}╔══════════════════════════════════════════════════════════════╗${NC}" |
| 16 | echo -e "${AZUL}║ 🚀 alloy — Dashboard Docker en tiempo real ║${NC}" |
| 17 | echo -e "${AZUL}║ Episodio #834 — atareao con Linux ║${NC}" |
| 18 | echo -e "${AZUL}╚══════════════════════════════════════════════════════════════╝${NC}" |
| 19 | echo "" |
| 20 | |
| 21 | # 1. Comprobar prerequisitos |
| 22 | echo -e "${AMARILLO}🔍 Comprobando prerequisitos...${NC}" |
| 23 | |
| 24 | if command -v docker &> /dev/null; then |
| 25 | echo -e " ${VERDE}✅ Docker encontrado${NC}" |
| 26 | DOCKER_CMD="docker" |
| 27 | elif command -v podman &> /dev/null; then |
| 28 | echo -e " ${VERDE}✅ Podman encontrado${NC}" |
| 29 | DOCKER_CMD="podman" |
| 30 | else |
| 31 | echo -e " ${ROJO}❌ Ni Docker ni Podman están instalados${NC}" |
| 32 | exit 1 |
| 33 | fi |
| 34 | |
| 35 | # 2. Comprobar variables OIDC |
| 36 | echo -e "${AMARILLO}🔐 Comprobando configuración OIDC...${NC}" |
| 37 | |
| 38 | if [ -f .env ]; then |
| 39 | source .env |
| 40 | fi |
| 41 | |
| 42 | MISSING=0 |
| 43 | for var in OIDC_ISSUER_URL OIDC_CLIENT_ID OIDC_CLIENT_SECRET OIDC_REDIRECT_URL; do |
| 44 | if [ -z "${!var}" ]; then |
| 45 | echo -e " ${ROJO}❌ Variable $var no configurada${NC}" |
| 46 | MISSING=1 |
| 47 | fi |
| 48 | done |
| 49 | |
| 50 | if [ $MISSING -eq 1 ]; then |
| 51 | echo -e "${ROJO}❌ OIDC es OBLIGATORIO. alloy no arranca sin las 4 variables.${NC}" |
| 52 | exit 1 |
| 53 | fi |
| 54 | |
| 55 | # 3. Preparar directorio y arrancar |
| 56 | DIR="/opt/alloy" |
| 57 | sudo mkdir -p "$DIR/data" |
| 58 | cd "$DIR" |
| 59 | sudo $DOCKER_CMD compose up -d |
| 60 | |
| 61 | echo -e "${VERDE}✅ alloy está corriendo en http://localhost:3066${NC}" |