dns Self-Hosted

Control total.
Tu infraestructura, tus reglas.

Despliega PgStudio dentro de tu propia VPC, servidor o cluster de Kubernetes. Tus datos y credenciales jamás salen de tu red. Cumplimiento normativo total.

Inicio rápido con Docker Compose

El método recomendado para self-hosted. Levanta el stack completo en un solo comando.

Terminal
# 1. Copia y edita las variables de entorno
cp .env.production.example .env.production

# 2. Levanta el stack completo (nginx + API + PostgreSQL metadata)
docker compose --env-file .env.production \
  -f docker/docker-compose.yml up -d --build

# 3. Abre en el navegador
open http://localhost:8080

Qué se despliega

Tres servicios en red interna. Sólo el puerto del frontend queda expuesto al exterior.

public

web (nginx)

:8080

Sirve la SPA Angular y hace proxy de /api/* y /socket.io/* al servicio API interno.

Expuesto al host
hub

api (NestJS)

:3000 (interno)

Gateway principal. Maneja auth, conexiones, queries SQL y WebSocket. Conecta a PostgreSQL vía TCP.

Red interna
database

postgres (metadata)

:5432 (interno)

Base de datos interna para los metadatos de PgStudio: usuarios, conexiones guardadas y sesiones.

Red interna

Variables de entorno requeridas

Genera los secretos con Node.js o cualquier generador de bytes aleatorios.

Generar secretos
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
VariableDescripción
DATABASE_URLPostgreSQL URL para la base de metadatos interna de PgStudio.
JWT_SECRETSecreto para tokens de acceso (1h). Mínimo 32 bytes aleatorios.
JWT_REFRESH_SECRETSecreto diferente para refresh tokens (7d). No reutilices JWT_SECRET.
CREDENTIALS_ENCRYPTION_KEYClave AES-GCM para cifrar contraseñas de conexión guardadas. Mínimo 32 chars.
CORS_ORIGINOrigen público del frontend, ej. https://pgstudio.example.com.

Instalador local automático

El script genera secretos, crea el directorio de instalación y arranca Docker Compose.

terminal

Linux / macOS / WSL

sh scripts/install-local.sh

# Con puerto personalizado
PGSTUDIO_WEB_PORT=9090 sh scripts/install-local.sh
window

Windows PowerShell

.\scripts\install-local.ps1

# Con base de datos externa
.\scripts\install-local.ps1 `
  -ExternalDatabaseUrl "postgresql://..."

folder Directorio de instalación por defecto: ~/.pgstudio

¿Prefieres usar la nube gestionada?

Si no quieres gestionar infraestructura, el modo Cloud está disponible en segundos.