Instalá Arandu AI v1 en un comando
Un instalador guiado descarga la imagen OCI firmada, verifica su firma con cosign, genera los secretos y deja el stack de Docker Compose listo para arrancar. Tiempo estimado: 30 minutos en hardware estándar.
# Descargá el instalador y ejecutalo
curl -fsSLO https://descargas.arandu-ia.com/install.sh
bash install.sh
Funciona en Linux, macOS y Windows (WSL2). Detecta automáticamente Podman o Docker y la arquitectura (arm64 / amd64).
Requisitos del sistema
Requisitos para Arandu AI y sus servicios propios (arandu-server, consola, PostgreSQL, Redis, Qdrant, storage). Los modelos locales requieren hardware adicional según el runtime elegido por el operador.
| Componente | Requisito mínimo | Recomendado |
|---|---|---|
| Sistema operativo | Linux, macOS o Windows con WSL2 | Linux x86_64/arm64 para producción |
| Motor de containers | Podman 4+ o Docker 24+, con su plugin compose |
Podman 5+ (recomendado) o Docker 25+ |
| RAM | 4 GB libres para Arandu | 8 GB con RAG habilitado |
| CPU | 2 vCPU para Arandu | 4 vCPU recomendado |
| Disco | 20 GB libres mínimo | Escala con corpus RAG |
| Red | Salida HTTPS a descargas.arandu-ia.com, license.arandu-ia.com y proveedores BYOK |
— |
| Reverse proxy | Caddy, Nginx, Traefik o equivalente con TLS válido | Caddy (TLS automático) |
| Herramientas | bash, curl, openssl |
cosign para verificar la firma |
Instalación paso a paso
El instalador install.sh hace el trabajo pesado y es el camino soportado. Produce una instalación self-hosted funcional sobre Docker/Podman Compose, validada end-to-end.
Descargar y ejecutar el instalador
Descargá install.sh y ejecutalo. El instalador detecta el motor de containers (Podman preferido, Docker soportado) y tu arquitectura, y te preguntará la URL pública de la instancia y el email del owner inicial.
curl -fsSLO https://descargas.arandu-ia.com/install.sh
bash install.sh
Opciones: --version 1.0.0-rc.2, --dir ./arandu, --port 8080. Ejecutá bash install.sh --help para verlas todas.
Qué hace el instalador
De forma automática y verificable:
- Descarga la imagen OCI (tar),
compose.yaml,cosign.pubychecksums.txt. - Verifica el checksum SHA-256 y, si
cosignestá instalado, la firma cosign del artefacto. - Carga la imagen en el motor de containers.
- Genera la clave maestra de cifrado (KEK) y la contraseña de PostgreSQL con permisos
600. - Escribe el
.envde producción (incluyeARANDU_LICENSE_SERVER_URL=https://license.arandu-ia.com) y deja instrucciones de TLS y arranque.
Configurar el reverse proxy con TLS
En producción Arandu exige HTTPS detrás de un reverse proxy TLS. Ejemplo mínimo con Caddy (emite y renueva el certificado solo):
# Caddyfile
tu-dominio.com {
reverse_proxy 127.0.0.1:8080
}
Arrancar el stack
Desde el directorio de instalación (por defecto ./arandu), levantá todos los servicios. Las migraciones se aplican solas al arrancar.
cd arandu
# Podman:
podman compose --env-file .env up -d
# o Docker:
docker compose --env-file .env up -d
Verificar la instalación
Comprobá que los endpoints respondan y obtené la contraseña inicial del owner desde los logs:
curl -fsS http://127.0.0.1:8080/health
curl -fsS http://127.0.0.1:8080/ready
curl -fsS http://127.0.0.1:8080/info
# Contraseña inicial del owner (marcador owner_bootstrap)
podman logs $(podman ps --format '{{.Names}}' | grep arandu-server) | grep owner_bootstrap
Criterios: /health y /ready retornan 200; /info muestra version, commit y canal rc.
Primer login, onboarding y trial
Abrí la consola en la URL pública configurada e ingresá con el email del owner y la contraseña inicial impresa en logs. El asistente de onboarding te guiará para:
- Establecer una contraseña fuerte y enrolar MFA TOTP.
- Configurar tu primer proveedor/modelo BYOK.
- Crear una API key y validar la primera llamada de IA.
Verificación manual de la firma
El instalador verifica la firma automáticamente si cosign está disponible. Para hacerlo a mano, descargá el artefacto, su firma .sig y la clave pública cosign.pub, y verificá (reemplazá arm64 por amd64 según tu arquitectura):
VER=1.0.0-rc.2
ARCH=arm64 # o amd64
BASE=https://descargas.arandu-ia.com
curl -fsSLO $BASE/arandu-server-$VER-$ARCH.oci.tar
curl -fsSLO $BASE/arandu-server-$VER-$ARCH.oci.tar.sig
curl -fsSLO $BASE/cosign.pub
cosign verify-blob \
--key cosign.pub \
--signature arandu-server-$VER-$ARCH.oci.tar.sig \
--insecure-ignore-tlog=true \
arandu-server-$VER-$ARCH.oci.tar
La salida esperada es Verified OK. La firma se genera con cosign respaldado por una clave no exportable; --insecure-ignore-tlog=true indica que no usamos el log público de transparencia (firma offline con clave propia).
Instalación manual (avanzada)
Si preferís controlar cada paso o auditar el proceso, podés replicar a mano lo que hace el instalador. Descargá los artefactos, verificá la firma (sección anterior), cargá la imagen y armá el .env.
VER=1.0.0-rc.2
ARCH=arm64 # o amd64
BASE=https://descargas.arandu-ia.com
mkdir -p arandu/secrets && cd arandu
# 1. Descargar artefactos
for f in arandu-server-$VER-$ARCH.oci.tar compose.yaml cosign.pub checksums.txt; do
curl -fsSLO $BASE/$f
done
# 2. Verificar checksum
grep " arandu-server-$VER-$ARCH.oci.tar\$" checksums.txt | shasum -a 256 -c -
# 3. Cargar la imagen
podman load -i arandu-server-$VER-$ARCH.oci.tar # o: docker load -i ...
# 4. Generar secretos
openssl rand -base64 32 > secrets/kek.key
openssl rand -hex 24 > secrets/postgres-password
chmod 600 secrets/*
# 5. Crear .env (ver variables en compose.yaml) y arrancar
# ARANDU_IMAGE, ARANDU_PORT, ARANDU_APP_URL, ARANDU_DATABASE_URL,
# ARANDU_LICENSE_MODE=remote, ARANDU_LICENSE_SERVER_URL=https://license.arandu-ia.com, ...
podman compose --env-file .env up -d
El compose.yaml oficial documenta todas las variables requeridas en su cabecera. No uses tags latest: fijá siempre la versión.
Fortalecimiento post-instalación
| Acción | Por qué |
|---|---|
| Configurar reverse proxy con TLS y HSTS | Cifrado en tránsito obligatorio en producción |
Mantener arandu-server escuchando solo en 127.0.0.1 detrás del proxy |
Reducir superficie de ataque |
| Programar backup diario de PostgreSQL + storage + Qdrant + KEK | RPO recomendado: 24 horas |
| Almacenar copia offline de la KEK en medio separado | Sin KEK, las credenciales BYOK son irrecuperables |
| Configurar IP allowlist para API keys de producción | Reducir exposición ante filtración de API keys |
Suscribir /metrics al Prometheus del cliente |
Observabilidad: latencia, errores, costos, security hits |
| Programar restore drill trimestral | Verificar que los backups son realmente recuperables |
¿Necesitás ayuda con la instalación?
El soporte estándar incluido en la suscripción Pro cubre asistencia con upgrades y restore. Contactanos por email.