Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

GhostHub

Servidor multimedia auto-alojado para Raspberry Pi 4 enfocado en streaming local, gestión de perfiles y almacenamiento privado sin nube. Construido con Python/Flask, no usa Docker, y está optimizado para hardware específico.

Ficha actualizada 18 sept 2026, 20:46 · upstream 30 may 2026, 20:27 · release v5.3.0

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es GhostHub

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

GhostHub transforma una Raspberry Pi 4 y almacenamiento USB en un servidor de medios privado para redes domésticas. Permite navegar, reproducir, subir y organizar fotos y videos desde cualquier dispositivo conectado a la red, sin depender de servicios en la nube ni suscripciones. Soporta dos modos de red: conexión LAN estándar y modo Access Point con Wi-Fi propio para uso offline o portátil.

El backend utiliza Python 3.9 con Flask y SPECTER, mientras que el frontend emplea módulos ES y RAGOT. SQLite gestiona el estado local. Incluye soporte nativo para subtítulos (SRT, VTT, ASS, SSA) convertidos automáticamente vía ffmpeg. Cuenta con panel de administración para actualizaciones, gestión de almacenamiento, logs y reinicios.

Es específico para Raspberry Pi OS Lite Bullseye (imagen oficial del 28/01/2022), no es un instalador genérico. Las actualizaciones se gestionan desde GitHub Releases mediante scripts systemd. Requiere Python 3.9 en desarrollo local y mantiene una arquitectura modular compatible con contribuciones comunitarias.

CASOS DE USO
  • Centro de medios familiar con perfiles, avatares y progreso de visualización por usuario
  • Streaming directo de fotos/videos desde móvil/tablet sin subir a la nube
  • Modo offline mediante red Wi-Fi propia (Access Point) para uso en exteriores o viajes
  • Gestión local de biblioteca multimedia con categorías, listas de reproducción y búsqueda
  • Acceso remoto seguro vía Tailscale/Headscale o Cloudflare Tunnel sin exponer puertos
  • Transcoding experimental para formatos no soportados nativamente (MKV, HEVC) usando GhostStream externo
PUNTOS DESTACADOS
  • Licencia AGPL-3.0: código abierto y modificable con obligación de compartir cambios en entornos SaaS
  • Optimizado para Raspberry Pi 4 con imagen oficial Bullseye (arm64/armhf), no genérico
  • Streaming directo sin transcoding para formatos comunes (.mp4, .webm, .jpg, .png)
  • Gestión de perfiles con historial individual y sincronización entre dispositivos conectados
  • Temas personalizables vía Theme Builder y galería comunitaria oficial
  • Actualizaciones automáticas desde GitHub Releases sin intervención manual en producción
PRECAUCIONES
  • No incluye Docker ni Compose; requiere instalación nativa o scripts de despliegue específicos
  • GhostStream (transcoding) es experimental, no viene incluido y debe configurarse externamente
  • Requiere Python 3.9 específico para desarrollo local; versiones diferentes pueden romper la compatibilidad
  • No soporta otros modelos de Raspberry Pi ni distribuciones genéricas de Raspberry Pi OS
  • Actualizaciones preservan carpetas clave (instance/, venv/, headscale), pero fallan si no se siguen los pasos de reinstalación
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU4 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Recomendado: usar imagen oficial 2022-01-28-raspios-bullseye-arm64-lite flashada con Raspberry Pi Imager. Configurar hostname 'ghosthub', habilitar SSH y establecer contraseña en Imager. Ejecutar script ./install_ghosthub.sh tras conexión SSH. Para desarrollo local, usar Python 3.9 virtualenv y activar venv antes de ejecutar ghosthub.py. Si se necesita transcoding avanzado, desplegar GhostStream en máquina separada. No usar imágenes genéricas ni versiones de Python distintas a 3.9.

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Python
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
No detectados
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.