Cómo instalar LeafWiki en Docker- Wiki minimalista autohospedada en Docker

LeafWiki | Lightweight Wiki | Docker

LeafWiki: Wiki minimalista autohospedada en Docker para ingenieros

Wiki ultra-ligero en binario Go. Markdown en disco. SQLite. Sin Node.js, Redis, Postgres. Estructura de árbol. Perfecto para Raspberry Pi. MIT license.

¿Qué es LeafWiki?


LeafWiki es un wiki minimalista de código abierto diseñado específicamente para ingenieros y equipos pequeños que quieren documentación estructurada sin complejidad operacional. A diferencia de Wiki.js o Outline que requieren Node.js, Redis, PostgreSQL, LeafWiki es simplemente un binario Go único que almacena contenido Markdown en disco.

Filosofía de diseño: "Si has mirado Wiki.js u Outline y pensaste 'esto es demasiado para lo que necesito' — LeafWiki podría ser para ti". Enfocado en claridad sobre complejidad. Single Go binary. Sin dependencias externas. Markdown en disco (legible, backup es `cp -r`). SQLite para índices y metadata.

Características principales: Editor Markdown integrado con live preview. Navegación de árbol (carpetas, subcarpetas). Búsqueda full-text. Soporte para Mermaid diagrams. Tabla de contenidos automática. Historial de revisiones (opcional). Autenticación: modo privado, público con login, o completamente abierto. Permisos: admin, editor, viewer. Importador Markdown (ZIP archives, Obsidian vaults). Almacenamiento: absolutamente todo en disco, sin lock-in. Soporta Raspberry Pi (ARM64 + x86_64). Reverse-proxy friendly. MIT license.

Para documentación a largo plazo: Wiki que no necesita ops. Contenido legible. Backup simple. Sin vendor lock-in. Corre en cualquier lado.

Características principales

Binario Go único

Single binary. Sin Node.js, Redis, Postgres. Download y ejecuta.

Markdown en disco

Contenido legible fuera de la app. Backup es `cp -r`. Sin encriptación.

Estructura de árbol

Navegación por carpetas. No es flat feed. Para quien piensa en jerarquías.

Editor integrado

Live preview. Markdown completo. Keyboard shortcuts. Autocomplete links internos.

Búsqueda full-text

Busca rápida en todas las páginas. Índice SQLite.

Diagramas Mermaid

Renderiza automáticamente. Flowcharts, secuencias, gráficos.

Historial de revisiones

Opcionalmente guarda versiones. Link refactoring. Permalinks.

Autenticación flexible

Privado, público-read-only, o abierto. Email/password. Proxy auth. OIDC.

Almacenamiento en disco

SQLite + Markdown files. Todo en tu carpeta. Backup trivial.

Multiplataforma

Linux (x86_64, ARM64), macOS, Windows, Raspberry Pi.

Importador Markdown

ZIP, Obsidian vaults, carpetas locales. Preserva estructura.

Reverse-proxy friendly

--base-path para subpaths. X-Forwarded-Proto para HTTPS.

No es para (y está bien)

LeafWiki deliberadamente NO soporta:

  • Colaboración real-time (no es Google Docs)
  • Workflows de aprobación complejos
  • Permisos ultra-granulares (3 roles: admin/editor/viewer)
  • Sustituto Confluence (es demasiado simple)

Mejor fit: Documentación a largo plazo. Engineers. Equipos pequeños. Obsidian vaults que necesitan UI. Markdown estructurado.

Requisitos del sistema

  • Docker (opcional) - O ejecutar binario directo
  • 256 MB RAM (ultra-ligero)
  • 500 MB - 2 GB espacio disco (depende volumen Markdown)
  • Puerto 8080 (configurable)
  • Linux, macOS, Windows, Raspberry Pi - Todos soportados
  • Navegador moderno (cualquiera)
Ultra-ligero: Corre en Raspberry Pi Zero. VPS de $2/mes. Cualquier servidor viejo. Footprint mínimo.

Instalación con Docker

Opción 1: Docker run simple

docker run -p 8080:8080 \ -v ~/leafwiki-data:/app/data \ ghcr.io/perber/leafwiki:latest \ --jwt-secret=tu-secret \ --admin-password=tu-password \ --allow-insecure=true

Opción 2: Docker Compose

cat > docker-compose.yml << 'EOF' version: '3.8' services: leafwiki: image: ghcr.io/perber/leafwiki:latest container_name: leafwiki restart: unless-stopped ports: - "8080:8080" volumes: - ./leafwiki-data:/app/data command: - --jwt-secret=tu-secret - --admin-password=tu-password - --allow-insecure=true EOF docker compose up -d

Opción 3: Binario directo en Raspberry Pi

curl -sL https://raw.githubusercontent.com/perber/leafwiki/main/install.sh -o install.sh chmod +x ./install.sh sudo ./install.sh --arch arm64 --jwt-secret=tu-secret # Corre automáticamente como systemd service

Acceder

http://localhost:8080 - LeafWiki dashboard

Primeros pasos

1. Login como admin

  1. Abre http://localhost:8080
  2. Usa password admin que configuraste
  3. Ingresa al dashboard

2. Crear estructura de árbol

  1. Left sidebar: "New Page"
  2. Crea carpeta raíz: "Documentation"
  3. Crea subcarpetas: "Getting Started", "API", "Architecture"
  4. Tree se agranda automáticamente

3. Escribir primera página

  1. Click en carpeta → "New Page"
  2. Nombre: "Welcome"
  3. Editor Markdown con live preview
  4. Ctrl+S para guardar (automático cada pocos segundos)

4. Usar Markdown avanzado

# Markdown soportado: # - Headings, bold, italic, code # - Tables, task lists, footnotes # - Callouts: :::info, :::warning, :::danger # - Mermaid diagrams # - LaTeX math (KaTeX) # - Wikilinks: [[Page Name]]

5. Usar Mermaid diagram

```mermaid graph TD A[Start] --> B[Write Docs] B --> C[Deploy] C --> D[Done!] ```

6. Invitar colaboradores

  1. Settings → "Users"
  2. Crear usuario con rol: admin, editor, o viewer
  3. Asigna a páginas específicas (opcional)

7. Importar Obsidian vault o Markdown

  1. Settings → "Import"
  2. Upload ZIP de tu vault Obsidian
  3. Estructura se preserva automáticamente
  4. Wikilinks se convierten a LeafWiki links

8. Buscar

  1. Buscador superior (lupa)
  2. Full-text search de todas las páginas
  3. Instantáneo gracias a índice SQLite

Casos de uso

  • Documentación de equipo: Engineering docs, runbooks, arquitectura. Legible y versionable.
  • Obsidian vault con UI: Migra tu vault local a wiki con navegación.
  • Knowledge base personal: Notas a largo plazo. Estructura persistente. Backup trivial.
  • Pequeños equipos: Sin ops overhead. Corre en hardware viejo o Raspberry Pi.
  • Compliance/auditoría: Contenido en disco. Sin cloud. Auditable. GDPR-friendly.
  • Proyectos open source: Wiki ligero para comunidad. Abierto o restringido.

HTTPS con Caddy (producción)

Caddyfile

wiki.tudominio.com { reverse_proxy localhost:8080 }

Configurar para HTTPS

# En docker-compose o docker run: # OMITIR --allow-insecure=true cuando Caddy forwardea HTTPS # Caddy automáticamente envía X-Forwarded-Proto: https

Con base-path (subdominio)

--base-path=/wiki # Ahora accesible en: https://tudominio.com/wiki

Gestión y mantenimiento

Backup (simple)

docker compose stop cp -r ./leafwiki-data ./leafwiki-backup-$(date +%Y%m%d) docker compose start

Ver logs

docker compose logs -f leafwiki

Reiniciar

docker compose restart leafwiki

Actualizar a versión más reciente

docker compose pull docker compose up -d

Monitorear consumo

docker stats leafwiki # Verás: muy bajo CPU, muy bajo RAM

Exportar datos

cd leafwiki-data find . -name "*.md" -type f # Todos tus archivos Markdown en el directorio

Comparativa con alternativas

vs Wiki.js

LeafWiki gana: Ultra-ligero, single binary, no Postgres/Node. Wiki.js gana: Más features, plugins, enterprise.

vs Outline

LeafWiki gana: Mucho más simple, bajo overhead, Markdown en disco. Outline gana: Más pulido, mejor UX, colaboración.

vs Obsidian (local)

LeafWiki gana: Web-based, compartible, navegación árbol UI. Obsidian gana: Más features, plugins, graph view.

vs Confluence

LeafWiki gana: Gratuito, simple, bajo overhead. Confluence gana: Enterprise, approval workflows, integración Jira.

Mejor para: Ingenieros que quieren wiki simple, legible, sin ops. Markdown en disco. Control total. Corre en Raspberry Pi.

Comentarios

Entradas populares de este blog

Cómo Instalar y configurar SERVIDOR VPN WIREGUARD en MIKROTIK 🔐 #VPN #Wireguard #Mikrotik #RouterOS

Cómo instalar y configurar DSM SYNOLOGY 7.2.2 en PC | Guía completa, instalación, RAID 1, SMB

Cómo INSTALAR y CONFIGURAR OpenVPN en MIKROTIK. Guía completa paso a paso.