Skip to content

keba2503/cloudbeaver-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CloudBeaver Manager

Sistema de gestión de bases de datos vía web usando CloudBeaver. Permite administrar múltiples bases de datos (MySQL, PostgreSQL, MongoDB, SQLite, Oracle, SQL Server, etc.) desde una interfaz web moderna.

Requisitos Previos

  • Docker
  • Docker Compose
  • Git

Instalación

1. Clonar el repositorio

git clone <url-del-repositorio>
cd cloudbeaver-manager

2. Configurar variables de entorno

Copia el archivo .env.example a .env y modifica los valores según tus necesidades:

cp .env.example .env
nano .env  # o tu editor preferido

Variables disponibles:

  • CLOUDBEAVER_PORT: Puerto de acceso (default: 8978)
  • CB_SERVER_NAME: Nombre del servidor
  • CB_SERVER_URL: URL del servidor
  • CB_ADMIN_NAME: Usuario administrador
  • CB_ADMIN_PASSWORD: Contraseña administrador (¡CAMBIAR EN PRODUCCIÓN!)

3. Iniciar el servicio

Opción A - Usando el script:

./scripts/start.sh

Opción B - Manualmente:

docker-compose up -d

4. Acceder a CloudBeaver

Abre tu navegador en: http://localhost:8978

En el primer acceso deberás configurar el usuario administrador.

Uso

Iniciar el servicio

./scripts/start.sh

Detener el servicio

./scripts/stop.sh

Ver logs

docker-compose logs -f

Reiniciar el servicio

docker-compose restart

Configurar Conexiones a Bases de Datos

  1. Accede a CloudBeaver en tu navegador
  2. Haz clic en "New Connection"
  3. Selecciona el tipo de base de datos (MySQL, PostgreSQL, etc.)
  4. Ingresa los datos de conexión:
    • Host (localhost o IP del servidor)
    • Puerto
    • Base de datos
    • Usuario
    • Contraseña
  5. Haz clic en "Test Connection" para verificar
  6. Guarda la conexión

Estructura del Proyecto

cloudbeaver-manager/
├── docker-compose.yml          # Configuración de Docker
├── .env                        # Variables de entorno (no versionado)
├── .env.example               # Ejemplo de variables de entorno
├── .gitignore                 # Archivos ignorados por Git
├── README.md                  # Esta documentación
├── workspace/                 # Datos persistentes (no versionado)
└── scripts/
    ├── start.sh              # Script para iniciar
    └── stop.sh               # Script para detener

Despliegue en Servidor

Desde tu máquina local

  1. Haz commit y push de los cambios:
git add .
git commit -m "Configuración inicial"
git push origin main

En el servidor

  1. Conéctate al servidor:
ssh usuario@ip-servidor
  1. Clona el repositorio:
git clone <url-del-repositorio>
cd cloudbeaver-manager
  1. Crea el archivo .env con las credenciales del servidor:
cp .env.example .env
nano .env
  1. Inicia el servicio:
./scripts/start.sh
  1. Accede desde: http://IP_SERVIDOR:8978

Actualizar en el servidor

Cuando hagas cambios en local y quieras actualizarlos en el servidor:

# En el servidor
cd cloudbeaver-manager
git pull origin main
docker-compose down
docker-compose up -d

Persistencia de Datos

Todos los datos de configuración, conexiones y preferencias se almacenan en el directorio workspace/. Este directorio:

  • NO se versiona en Git (está en .gitignore)
  • Persiste entre reinicios del contenedor
  • Debe respaldarse regularmente

Hacer backup

tar -czf cloudbeaver-backup-$(date +%Y%m%d).tar.gz workspace/

Restaurar backup

tar -xzf cloudbeaver-backup-YYYYMMDD.tar.gz

Seguridad

Recomendaciones para Producción

  1. Cambiar credenciales por defecto en el archivo .env
  2. Configurar firewall para restringir acceso al puerto 8978
  3. Usar HTTPS con proxy reverso (nginx + Let's Encrypt)
  4. Limitar IPs que pueden acceder al servicio
  5. Backups regulares del directorio workspace

Ejemplo de configuración nginx con HTTPS

server {
    listen 443 ssl;
    server_name db.tudominio.com;

    ssl_certificate /etc/letsencrypt/live/db.tudominio.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/db.tudominio.com/privkey.pem;

    location / {
        proxy_pass http://localhost:8978;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Bases de Datos Soportadas

CloudBeaver soporta múltiples tipos de bases de datos:

  • MySQL / MariaDB
  • PostgreSQL
  • MongoDB
  • SQLite
  • Oracle
  • Microsoft SQL Server
  • IBM DB2
  • Cassandra
  • Redis
  • ClickHouse
  • Y muchas más...

Troubleshooting

El contenedor no inicia

# Ver logs del contenedor
docker-compose logs cloudbeaver

# Verificar estado
docker-compose ps

No puedo acceder desde el navegador

  1. Verifica que el contenedor esté corriendo:

    docker ps | grep cloudbeaver
  2. Verifica el puerto:

    netstat -tlnp | grep 8978
  3. Verifica el firewall (si aplica)

Olvidé la contraseña de administrador

Detén el servicio y elimina el directorio workspace para resetear:

./scripts/stop.sh
rm -rf workspace
./scripts/start.sh

ADVERTENCIA: Esto eliminará todas las conexiones y configuraciones guardadas.

Error de permisos en workspace

sudo chown -R $USER:$USER workspace/

Actualizaciones

Para actualizar CloudBeaver a la última versión:

docker-compose pull
docker-compose down
docker-compose up -d

Contribuir

Si encuentras algún problema o tienes sugerencias, abre un issue o pull request.

Licencia

Este proyecto es una configuración de CloudBeaver, que es software de código abierto. Consulta la licencia de CloudBeaver para más detalles.

Recursos

About

Web-based database management with CloudBeaver and Docker

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages