Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

fbs-core

fbs-core es un ecosistema de almacenamiento de objetos autoalojado compatible con AWS S3, optimizado para despliegues en un solo nodo como homelabs o proyectos pequeños. Utiliza Go y SQLite, con API S3 completa y autenticación dual (SigV4/Bearer).

Ficha actualizada 26 sept 2026, 3:40 · upstream 26 sept 2026, 3:35 · release v0.2.0

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es fbs-core

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

fbs-core es una solución de almacenamiento de objetos ligera y compatible con la API AWS S3, diseñada para despliegues en un solo nodo como homelabs o proyectos pequeños. Utiliza Go 1.27 como lenguaje principal, SQLite en modo WAL para metadatos y el sistema de archivos local para almacenamiento de objetos, aprovechando transferencias sin copia mediante sendfile().

El backend gestiona operaciones S3 (PUT, GET, DELETE, HEAD), buckets y subidas multipartes. Incluye caché en memoria LRU para metadatos SQLite, optimización de concurrencia con synchronous=NORMAL y busy_timeout=5000, y autenticación unificada vía tokens Bearer o AWS SigV4. La seguridad incluye sanitización de rutas, validación de checksums en tiempo real y reconciliación automática de datos.

El despliegue requiere inicialización manual mediante el endpoint /api/setup/bootstrap para crear el usuario admin inicial. No soporta Docker Compose, aunque incluye Dockerfile. La documentación detallada está en docs/README.md y quickstart.md.

CASOS DE USO
  • Almacenamiento personal de objetos (fotos, videos) en homelab con API S3 compatible
  • Backend de almacenamiento para aplicaciones web autoalojadas que requieran compatibilidad S3
  • CDN ligero para distribuir contenido estático en redes locales o pequeñas
  • Sistema de backup local con validación de integridad mediante checksums
  • Pruebas de API S3 sin dependencias externas (solo Go y SQLite)
PUNTOS DESTACADOS
  • API S3 completa con operaciones multipartes, buckets y objetos
  • Transferencias zero-copy usando sendfile() para alto rendimiento en disco local
  • Autenticación dual: AWS SigV4 y tokens Bearer para flexibilidad de integración
  • Optimización SQLite con WAL mode, caché LRU y tuning de concurrencia
  • Reconciliación automática de datos al inicio para purgar datos huérfanos
  • Validación en tiempo real de checksums (Content-MD5, x-amz-checksum-*)
PRECAUCIONES
  • Solo soporta despliegues en un solo nodo; no hay soporte explícito para clusters o réplicas
  • Requiere inicialización manual mediante endpoint /api/setup/bootstrap sin Docker Compose
  • No incluye Docker Compose, aunque tiene Dockerfile disponible
  • El bucket 'public' está reservado para URLs firmadas, no puede usarse como nombre de bucket
  • Dependencia de SQLite; no soporta bases de datos distribuidas o escalables
01

Perfil de infraestructura

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

CPU1 vCPUrecomendación inicial
MEMORIA1 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADlownivel de operación
02

Despliegue detectado

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

Docker detectado

Despliegue en un solo nodo con Go o Docker. Configurar permisos de escritura en el directorio de almacenamiento local. Ejecutar POST /api/setup/bootstrap desde localhost para crear admin inicial. Usar SQLite con WAL mode y ajustar synchronous=NORMAL, busy_timeout=5000. Validar checksums en uploads. No usar 'public' como nombre de bucket. Documentación en docs/quickstart.md.

✓Dockerfile
—Compose
—One-click
03

Stack y dependencias

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

FRAMEWORKS
Node.jsGo
SERVICIOS
S3/MinIO
BASES DE DATOS
No detectadas
PUERTOS
9000
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.