Cómo instalar IronCalc en Docker - Spreadsheet engine Rust autohospedado
IronCalc en Docker: Motor hojas de cálculo Rust autohospedado con soporte Excel .xlsx, 300+ funciones, bindings Python/JavaScript, sin vendor lock-in, alternativa Gnumeric/LibreOffice calc, embebible/self-hosted, 2.5k+ stars, MIT/Apache 2.0 open source, production-ready 📊🔧
IronCalc es un motor de hojas de cálculo completamente autohospedado construido en Rust. Alternativa moderna a Excel/Google Sheets/LibreOffice Calc sin vendor lock-in. Soporte .xlsx completo (import/export preservando formulas + formato). 300+ funciones Excel-compatible (LET/LAMBDA/FILTER). Bindings Python + JavaScript. Multi-idioma + multi-locale. Se puede embeber en aplicaciones o usar como servicio web self-hosted. 2.5k+ GitHub stars. MIT/Apache 2.0 open source. Desarrollo activo.
Vídeo tutorial en YouTube
Mira el vídeo completo sobre cómo instalar y usar IronCalc en Docker en el canal GENBYTE:
¿Qué es IronCalc en Docker?
IronCalc es un motor de hojas de cálculo completamente autohospedado construido en Rust que proporciona alternativa moderna a Excel/Google Sheets/LibreOffice Calc con soporte .xlsx completo (import/export preservando formulas + formato), 300+ funciones Excel-compatible (LET/LAMBDA/FILTER), bindings Python + JavaScript, multi-idioma + multi-locale, sin vendor lock-in, embebible en aplicaciones o deployable como servicio web self-hosted. Spreadsheet engine que pedías sin depender de terceros.
Propuesta clave: Open source spreadsheet engine (Rust-powered). Import/export .xlsx files. Preserve formulas, formatting, named ranges. 300+ functions (Excel-compatible). Advanced features: LET/LAMBDA, FILTER, dynamic arrays, conditional formatting, multiple sheets. Python bindings (PyPI). JavaScript bindings (npm wasm). NodeJS support. Multi-language support (EN, DE, FR, IT, ES, etc). Multi-locale (date/number formatting). Timezone handling. Zero vendor lock-in. Deploy as web app (React UI). Embed in applications. CLI tools. API-driven. MIT + Apache 2.0 dual licensing. 2.5k+ GitHub stars. Active development. Roadmap: Version 1.0 (stable), Version 2.0 (charts, pivot tables, merge cells, formula help).
Características principales
Import/Export .xlsx
Lee y escribe Excel. Preserva formulas, formato, estilos, nombres.
300+ funciones Excel
LET, LAMBDA, FILTER, MAP, REDUCE. Comportamiento compatible Excel.
Hojas múltiples
Multi-sheet workbooks. Named ranges. Cross-sheet formulas.
Formatos avanzados
Rich formatting. Conditional formatting. Cell alignment, borders, colores.
Python bindings
PyPI package. Instala con pip. Usa IronCalc desde Python.
JavaScript bindings
npm package + WASM. NodeJS + browser support.
Web UI (React)
Modern interface. Responsive. Docker ready. 2080 puerto por defecto.
Multi-idioma
Soporte múltiples idiomas. Locales (date/number formatting).
API REST
Headless mode. Integra con cualquier aplicación.
CLI tools
Command-line interface. Procesa spreadsheets en scripts/bash.
Open source MIT+Apache
Dual licensing. Usa libremente. Modifica. Despliega anywhere.
Nextcloud integration
App Nextcloud oficial (proof of concept). Open con IronCalc.
Requisitos del sistema
- Docker & Docker Compose v2+
- 2 GB - 4 GB RAM mínimo (Rust app, Node.js wasm)
- 1 GB - 10 GB espacio disco (aplicación + datos spreadsheets)
- Puerto TCP: 2080 (web UI, configurable)
- Rust 1.75+ (opcional, si builds from source)
- Node.js 22+ (bundled en imagen Docker o necesario para dev)
- WASM toolchain (bundled en Docker)
- Opcional: Reverse proxy nginx/Caddy + HTTPS
Instalación con Docker Compose
Paso 1: Clonar repositorio
Paso 2: Iniciar con Docker Compose
Paso 3: Acceder a IronCalc
Acceder a IronCalc
📊 IronCalc Web UI: http://localhost:2080
Primeros pasos
- Abre
http://localhost:2080en navegador - Interfaz web limpia y moderna (React)
- Crea nuevo spreadsheet o importa .xlsx existente
- Edita: datos, formulas, formato, múltiples hojas
- Exporta como .xlsx (preserva todo)
Casos de uso
- Aplicaciones que necesitan spreadsheets: Embeber IronCalc. Python/JavaScript bindings. Lógica fórmulas en backend.
- Reportes automáticos: Genera .xlsx con Python. Formulas + datos. Sin Excel/LibreOffice.
- SaaS con feature spreadsheet: Embeber engine. Multi-tenant. Proporciona Excel-like UI a users.
- Migration from Excel: Importa librerías Excel. Usa en Python/JS. Sin vendor lock-in Excel.
- Nextcloud integration: Open spreadsheets directamente en Nextcloud con IronCalc UI.
- Data analysis tools: Carga datos, formulas, export resultados .xlsx.
Usar IronCalc con Python
Instalación
Ejemplo básico
Usar IronCalc con JavaScript
Instalación (npm)
Ejemplo básico (Node.js)
Gestión y mantenimiento
Ver estado
Ver logs
Detener IronCalc
Actualizar versión
Monitorear consumo
Stack técnico
- Backend: Rust (Axum framework)
- Frontend: React 19 (TypeScript)
- Spreadsheet engine: IronCalc core (Rust)
- WASM: wasm32-unknown-unknown target
- Build tools: wasm-pack, cargo, npm
- API: REST (OpenAPI)
- Bindings: Python (PyPI), JavaScript (npm/wasm)
- Deployment: Docker, Docker Compose
- Licencia: MIT + Apache 2.0 (dual)
Comparativa con alternativas
vs LibreOffice Calc
IronCalc gana: Modern, lightweight, embebible, headless. LibreOffice gana: Feature-complete, macros, charts, pivot tables.
vs Excel (on-prem)
IronCalc gana: Open source, cross-platform, headless, no vendor lock-in. Excel gana: Polish, ecosystem, macros VBA, support.
vs Gnumeric
IronCalc gana: Modern codebase (Rust), Python/JS bindings, active development. Gnumeric gana: Mature, feature-complete.
Comentarios
Publicar un comentario