Planka Docker Compose te permite desplegar en minutos tu propio servidor de gestión de proyectos estilo Kanban, ideal para equipos que buscan una alternativa open-source y privada a Trello. En esta guía completa descubrirás cómo instalar y configurar esta potente herramienta de productividad.
Qué es Planka Docker Compose
Planka Docker Compose es la configuración oficial para desplegar Planka, un gestor de proyectos colaborativo basado en tableros Kanban que puedes alojar en tu propio servidor. A diferencia de soluciones en la nube como Trello o Asana, Planka te otorga control total sobre tus datos y privacidad, siendo la elección preferida de equipos DevOps y desarrolladores que priorizan la soberanía digital.
Esta solución destaca por su sincronización en tiempo real, interfaz intuitiva de arrastrar y soltar, y su arquitectura ligera que consume mínimos recursos del sistema. Con soporte para más de 100 proveedores de notificaciones y autenticación OpenID Connect, se adapta perfectamente a entornos empresariales donde la seguridad es prioritaria.
El stack tecnológico combina React en el frontend con Node.js en el backend, comunicándose mediante una API REST eficiente. PostgreSQL actúa como base de datos relacional garantizando integridad y rendimiento en operaciones complejas con miles de tarjetas y usuarios.
Por qué elegir Planka Docker Compose en 2025
La gestión de proyectos moderna exige herramientas que equilibren funcionalidad, seguridad y costo. El gestor de proyectos autopublicado se ha convertido en la opción estratégica para organizaciones que rechazan suscripciones mensuales y dependencias de terceros.
- Control de datos absoluto: Tus proyectos y archivos permanecen en tu infraestructura
- Sin límites artificiales: Usuarios, tableros y tarjetas ilimitados sin costos adicionales
- Rendimiento superior: Sincronización instantánea sin dependencia de APIs externas
- Personalización total: Modifica el código fuente según tus necesidades específicas
- Multiidioma: Interfaz completamente traducible para equipos internacionales
- Cero costos recurrentes: Pago único por infraestructura, sin licencias mensuales
El proyecto cuenta con más de 964 commits de 149 colaboradores activos, garantizando un desarrollo continuo y mejoras constantes. Su código está disponible públicamente en GitHub oficial de Planka, donde puedes revisar el roadmap, reportar issues y contribuir con la comunidad global de desarrolladores.
La adopción en 2025 ha crecido exponencialmente entre startups tecnológicas, equipos remotos y departamentos de TI corporativos que migran desde soluciones SaaS hacia infraestructura propia. Las razones incluyen el aumento de ciberataques a plataformas cloud, regulaciones de protección de datos más estrictas, y la madurez del ecosistema self-hosted.
Requisitos previos para instalar Planka Docker Compose
Antes de proceder con la instalación de Planka Docker Compose, asegúrate de cumplir con estos requisitos mínimos en tu servidor:
- Sistema operativo: Linux (Ubuntu 22.04/24.04, Debian 11/12, Rocky Linux 9, AlmaLinux)
- RAM: Mínimo 512MB, recomendado 1GB para equipos medianos, 2GB para organizaciones grandes
- Almacenamiento: 300MB para la aplicación + espacio para archivos adjuntos (planifica 50MB por usuario activo)
- Docker: Versión 20.10 o superior (guía oficial de instalación)
- Docker Compose: Versión 2.0 o superior
- Puerto: 1337 disponible (configurable a cualquier otro si ya está ocupado)
- Ancho de banda: Mínimo 10Mbps para sincronización fluida con equipos remotos
Verifica las versiones instaladas ejecutando estos comandos en tu terminal:
docker --version
docker compose version
Si aún no tienes Docker instalado, la instalación varía según tu distribución. Para Ubuntu/Debian, el proceso oficial incluye configurar el repositorio APT y ejecutar el instalador automatizado que gestiona todas las dependencias necesarias para ejecutar Planka Docker Compose.
Instalación paso a paso de Planka Docker Compose
La instalación de Planka Docker Compose mediante contenedores simplifica drásticamente el proceso. Sigue estos pasos detallados para tener tu servidor operativo en menos de 5 minutos.
Paso 1: Crear el directorio del proyecto
Organiza los archivos de configuración en una estructura limpia y mantenible:
mkdir -p ~/planka
cd ~/planka
Este directorio albergará el archivo de configuración y opcionalmente scripts de backup personalizados.
Paso 2: Configurar docker-compose.yml optimizado
Crea el archivo Planka Docker Compose basado en el repositorio oficial. Este fichero define tanto la aplicación como la base de datos PostgreSQL necesaria para almacenar todos los datos del sistema:
services:
planka:
image: ghcr.io/plankanban/planka:latest
container_name: planka-app
restart: unless-stopped
volumes:
- favicons:/app/public/favicons
- user-avatars:/app/public/user-avatars
- background-images:/app/public/background-images
- attachments:/app/private/attachments
ports:
- "3000:1337"
environment:
- BASE_URL=http://tu-dominio.com:3000
- DATABASE_URL=postgresql://postgres@postgres/planka
- SECRET_KEY=cambia-esta-clave-por-algo-seguro-aleatorio-de-64-caracteres
- LOG_LEVEL=warn
- TRUST_PROXY=true
- [email protected]
- DEFAULT_ADMIN_PASSWORD=CambiaEstePasswordYA123!
- DEFAULT_ADMIN_USERNAME=admin
- DEFAULT_ADMIN_NAME=Administrador
- DEFAULT_LANGUAGE=es-ES
- TOKEN_EXPIRES_IN=365
- MAX_UPLOAD_FILE_SIZE=10485760
depends_on:
postgres:
condition: service_healthy
networks:
- planka-network
postgres:
image: postgres:16-alpine
container_name: planka-db
restart: unless-stopped
volumes:
- db-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=planka
- POSTGRES_HOST_AUTH_METHOD=trust
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d planka"]
interval: 10s
timeout: 5s
retries: 5
networks:
- planka-network
volumes:
favicons:
user-avatars:
background-images:
attachments:
db-data:
networks:
planka-network:
driver: bridge
Parámetros críticos a personalizar:
BASE_URL: URL pública de acceso (esencial para notificaciones por email y webhooks)SECRET_KEY: Clave criptográfica para tokens de sesión (genera una aleatoria conopenssl rand -hex 32)DEFAULT_ADMIN_EMAIL: Credenciales del administrador inicial (cámbialas inmediatamente tras el primer login)MAX_UPLOAD_FILE_SIZE: Límite en bytes para archivos adjuntos (10MB por defecto)TOKEN_EXPIRES_IN: Días de validez de sesiones (365 = 1 año)
Guarda el contenido en docker-compose.yml dentro del directorio creado. Esta configuración de Planka Docker Compose incluye healthchecks para garantizar que PostgreSQL esté completamente operativo antes de iniciar la aplicación principal.
Paso 3: Generar SECRET_KEY segura
La clave secreta protege las sesiones y tokens de autenticación. Genera una robusta ejecutando:
openssl rand -hex 32
Copia el resultado (64 caracteres hexadecimales) y reemplaza el valor de SECRET_KEY en el archivo. Nunca uses la clave de ejemplo en producción, ya que comprometería gravemente la seguridad de todas las cuentas de usuario.
Paso 4: Iniciar los contenedores
Despliega tu instalación de Planka Docker Compose con un solo comando desde el directorio del proyecto:
docker compose up -d
El flag -d ejecuta los contenedores en segundo plano (modo detached). Docker descargará las imágenes necesarias (aproximadamente 400MB en total) y creará los volúmenes persistentes para almacenamiento de datos.
Verifica que los servicios están funcionando correctamente:
docker compose ps
Deberías ver ambos contenedores (planka-app y planka-db) en estado «running» con el healthcheck de PostgreSQL mostrando «healthy». Accede desde tu navegador a http://tu-servidor:3000 y autentícate con las credenciales configuradas en DEFAULT_ADMIN_EMAIL y DEFAULT_ADMIN_PASSWORD.
Configuración avanzada de Planka Docker Compose
Una vez instalado el sistema básico, estas configuraciones adicionales mejorarán significativamente la seguridad, rendimiento y funcionalidad empresarial.
Integración con proxy inverso (Nginx o Caddy)
Para exponer el servicio con HTTPS y dominio personalizado, utiliza un proxy inverso. Recomendamos Caddy por su configuración automática de certificados SSL. Ejemplo con Caddy Docker Compose:
planka.tudominio.com {
reverse_proxy planka-app:1337
encode gzip
header {
Strict-Transport-Security "max-age=31536000;"
X-Content-Type-Options "nosniff"
X-Frame-Options "SAMEORIGIN"
}
}
Recuerda actualizar BASE_URL=https://planka.tudominio.com en tu archivo Planka Docker Compose para reflejar el dominio real y activar TRUST_PROXY=true para que la aplicación confíe en los headers HTTP forwarding.
Configurar notificaciones por email (SMTP)
Habilita las notificaciones automáticas por correo electrónico agregando variables SMTP al servicio Planka Docker Compose:
environment:
- SMTP_HOST=smtp.gmail.com
- SMTP_PORT=587
- [email protected]
- SMTP_PASSWORD=tu-password-de-aplicacion
- SMTP_FROM='"Planka Notificaciones" <[email protected]>'
- SMTP_SECURE=true
- SMTP_TLS_REJECT_UNAUTHORIZED=false
Para Gmail, genera una contraseña de aplicación específica desde la configuración de seguridad de tu cuenta Google (no uses tu contraseña principal). Proveedores alternativos como SendGrid, Mailgun o servidores SMTP propios también son compatibles.
Autenticación empresarial con OpenID Connect
Si tu organización utiliza single sign-on (SSO), la herramienta soporta OIDC de forma nativa para integración con proveedores corporativos:
environment:
- OIDC_ISSUER=https://tu-proveedor-oidc.com
- OIDC_CLIENT_ID=planka-client-id
- OIDC_CLIENT_SECRET=secret-confidencial-del-proveedor
- OIDC_SCOPES=openid email profile
- OIDC_ADMIN_ROLES=admin,superuser
- OIDC_EMAIL_ATTRIBUTE=email
- OIDC_NAME_ATTRIBUTE=name
- OIDC_USERNAME_ATTRIBUTE=preferred_username
Compatible con proveedores como Authelia, Keycloak, Authentik, Azure AD, Okta y Google Workspace. Consulta la documentación oficial de variables OIDC para configuraciones específicas de cada proveedor y mapeo avanzado de atributos.
Optimización de rendimiento con volúmenes NFS
Para entornos de alta disponibilidad con múltiples nodos, puedes migrar tu instalación de Planka Docker Compose utilizando volúmenes NFS compartidos. Esto permite escalar horizontalmente ejecutando múltiples réplicas del contenedor con balanceador de carga.
volumes:
attachments:
driver: local
driver_opts:
type: nfs
o: addr=192.168.1.100,rw
device: ":/mnt/planka-attachments"
Gestión diaria de Planka Docker Compose
Domina las operaciones cotidianas para maximizar la productividad de tu equipo con esta plataforma colaborativa de gestión visual.
Crear tu primer proyecto y tablero
Tras autenticarte por primera vez, haz clic en «Crear proyecto» en la barra superior. Define el nombre descriptivo, agrega una breve descripción que explique el objetivo del proyecto, y selecciona los miembros del equipo que tendrán acceso inicial.
Cada proyecto puede contener múltiples tableros Kanban con columnas personalizables. Las configuraciones típicas incluyen flujos básicos (Por hacer, En progreso, Completado), metodologías ágiles (Backlog, Sprint actual, En revisión, Hecho), o procesos empresariales personalizados.
Las tarjetas admiten descripciones enriquecidas con sintaxis Markdown completa (encabezados, listas, enlaces, código), listas de verificación con progreso visual, fechas de vencimiento con recordatorios automáticos, etiquetas de colores personalizables con nombres descriptivos, y archivos adjuntos hasta el límite configurado en MAX_UPLOAD_FILE_SIZE.
Colaboración en tiempo real
La sincronización instantánea mediante WebSockets permite que múltiples usuarios editen simultáneamente sin conflictos. Los cambios aparecen automáticamente en las pantallas de todos los miembros del equipo conectados sin necesidad de recargar manualmente la página del navegador.
Asigna tareas a usuarios específicos arrastrando sus avatares a las tarjetas, comenta directamente en las tarjetas con notificaciones a usuarios mencionados mediante @usuario, y recibe notificaciones configurables según tus preferencias personales (email, navegador o integraciones externas vía webhooks).
El sistema incluye indicadores de presencia que muestran qué usuarios están actualmente visualizando cada tablero, previniendo conflictos de edición y facilitando la comunicación síncrona.
Comandos útiles para administración
Gestiona tu instalación eficientemente con estos comandos esenciales que todo administrador debería dominar:
# Ver logs en tiempo real de la aplicación
docker compose logs -f planka
# Ver solo últimas 100 líneas de logs
docker compose logs --tail=100 planka
# Reiniciar servicios tras cambios de configuración
docker compose restart
# Detener completamente todos los servicios
docker compose down
# Actualizar a la última versión estable
docker compose pull
docker compose up -d
# Hacer backup completo de la base de datos
docker compose exec postgres pg_dump -U postgres planka > backup-$(date +%Y%m%d).sql
# Restaurar desde backup específico
docker compose exec -T postgres psql -U postgres planka < backup-20250101.sql
# Verificar espacio usado por volúmenes
docker volume ls
docker system df -v
# Limpiar logs antiguos de contenedores
docker compose logs --tail=0 -f > /dev/null 2>&1
Programa backups automáticos de tu instalación Planka Docker Compose mediante cron para ejecutar diariamente a las 2 AM y retener las últimas 30 copias rotativas.
Resolución de problemas comunes con Planka Docker Compose
Ante inconvenientes durante la instalación o uso, estas soluciones te ayudarán a restaurar la operatividad rápidamente sin perder datos.
Contenedor reiniciándose constantemente
Revisa los logs detallados para identificar el error específico que causa el ciclo de reinicios:
docker compose logs --tail=100 planka
Causas frecuentes incluyen: SECRET_KEY no configurada o vacía, error de conexión a PostgreSQL por nombre de host incorrecto, puerto 1337 ya ocupado por otro servicio (cámbialo a 3001:1337), permisos insuficientes en volúmenes Docker, o configuración OIDC con issuer inaccesible.
No puedo subir archivos adjuntos
Verifica los permisos del volumen de almacenamiento y el usuario con que corre el proceso interno:
docker compose exec planka ls -la /app/private/attachments
Si aparece «Permission denied», ajusta los permisos del volumen Docker ejecutando docker compose exec planka chown -R node:node /app/private/attachments. Alternativamente, incrementa MAX_UPLOAD_FILE_SIZE si los archivos exceden el límite predeterminado de 10MB.
Emails de notificación no se envían
Confirma que BASE_URL está configurado con el protocolo correcto (https:// en producción) y las credenciales SMTP son válidas y no han expirado. Prueba la conectividad SMTP desde el contenedor:
docker compose exec planka telnet smtp.gmail.com 587
Algunos proveedores de email requieren configuraciones específicas de seguridad (TLS vs SSL), puertos alternativos (465 para SSL, 587 para TLS), o whitelisting de la IP del servidor en su panel de control.
Sincronización en tiempo real no funciona
Si los cambios no aparecen automáticamente, verifica que los WebSockets no estén bloqueados por tu proxy inverso o firewall. Para Nginx, asegúrate de incluir:
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
En Caddy, el soporte de WebSockets está habilitado automáticamente sin configuración adicional.
Comparativa: Planka vs alternativas populares
Evalúa cómo se posiciona esta solución frente a otras herramientas de gestión de proyectos en el ecosistema self-hosted y cloud.
| Característica | Planka | Wekan | Focalboard | Trello (SaaS) |
|---|---|---|---|---|
| Licencia | Fair-code (OSL) | MIT | Apache 2.0 | Propietaria |
| Sincronización RT | Nativa WebSocket | Limitada (polling) | Sí (WebSocket) | Sí |
| Consumo RAM | ~200MB | ~400MB | ~300MB | N/A |
| Markdown | Completo (GFM) | Básico | Completo | Limitado |
| OIDC/SSO | Sí | No | Sí (Enterprise) | Solo Premium |
| Multiidioma | Sí (20+ idiomas) | Sí (40+ idiomas) | Limitado | Sí |
| API REST | Completa | Parcial | Completa | Completa |
| Instalación | Docker Compose | Docker/Snap | Docker/Binario | N/A |
La ventaja competitiva radica en su equilibrio entre ligereza y funcionalidad empresarial, superando a Wekan en rendimiento de sincronización y ofreciendo características comparables a soluciones comerciales sin costos recurrentes ni límites artificiales de usuarios o proyectos.
Preguntas frecuentes sobre Planka Docker Compose
¿Es seguro usar Planka para datos empresariales sensibles?
Sí, al ser completamente self-hosted, tus datos nunca salen de tu infraestructura controlada. Combínalo con HTTPS obligatorio (mediante proxy inverso), autenticación OIDC con 2FA, backups automáticos cifrados y políticas de acceso granulares para cumplir con normativas de protección de datos como GDPR, HIPAA o ISO 27001.
¿Cuántos usuarios simultáneos soporta Planka Docker Compose?
Depende directamente de los recursos del servidor. Con 2GB de RAM y 2 CPUs virtuales puede manejar cómodamente 50-100 usuarios activos simultáneos. Para organizaciones mayores (500+ usuarios), considera escalar verticalmente a 8GB RAM o implementar caché Redis para sesiones (funcionalidad planificada en la roadmap oficial para versión 3.0).
¿Puedo migrar mis tableros desde Trello a Planka?
Actualmente no existe importador oficial automático para Planka Docker Compose, pero la comunidad ha desarrollado scripts Python y Node.js para convertir exportaciones JSON de Trello al formato del sistema. Revisa el foro de discusiones en GitHub para herramientas actualizadas y guías de migración paso a paso compartidas por otros usuarios.
¿Hay aplicación móvil nativa disponible?
No hay apps nativas oficiales para iOS/Android actualmente, pero la interfaz web es completamente responsive con diseño mobile-first y funciona perfectamente desde navegadores móviles Safari, Chrome y Firefox. Puedes añadirla a la pantalla de inicio como Progressive Web App (PWA) para simular una experiencia de aplicación nativa con icono dedicado y pantalla completa.
¿Cómo actualizo a nuevas versiones sin perder datos?
Ejecuta docker compose pull para descargar la última imagen desde el registro de contenedores y docker compose up -d para aplicarla recreando solo los contenedores modificados. Las migraciones de esquema de base de datos se ejecutan automáticamente al iniciar mediante scripts integrados. Siempre realiza un backup completo de PostgreSQL previo por seguridad ante cualquier eventualidad.
Conclusión: Tu servidor de proyectos privado en minutos
Planka Docker Compose democratiza la gestión de proyectos profesional al ofrecer capacidades empresariales sin suscripciones mensuales ni dependencias de terceros. En menos de 10 minutos puedes tener operativo un sistema completo de tableros Kanban con sincronización en tiempo real, soporte multiusuario ilimitado y control absoluto sobre tus datos estratégicos.
Para equipos que valoran la privacidad por encima de conveniencias cloud, organizaciones con requisitos estrictos de cumplimiento normativo, o simplemente desarrolladores y startups que rechazan pagar por funcionalidades básicas artificialmente limitadas, esta herramienta representa la alternativa definitiva al modelo SaaS tradicional.
Su arquitectura contenedorizada garantiza instalaciones reproducibles en cualquier entorno, actualizaciones sin riesgo mediante versionado semántico, y portabilidad total entre proveedores de infraestructura (on-premise, VPS, cloud híbrido). La comunidad activa y el desarrollo continuo aseguran evolución constante con nuevas características cada trimestre.
Descarga el docker-compose.yml oficial, personaliza las variables de entorno según tu caso de uso específico, y únete a la comunidad de miles de equipos globales que han recuperado el control sobre sus flujos de trabajo. Para configuraciones más avanzadas con alta disponibilidad, visita la documentación de LinuxServer.io y el repositorio de imágenes en Docker Hub con builds automatizados y soporte extendido.
