Files
Portainer/vikunja

Vikunja

Gestor de tareas y proyectos con PostgreSQL, soporte CalDAV y envío de recordatorios por correo.

Arquitectura y propósito

vikunja ofrece interfaz, API y CalDAV; vikunja-db guarda usuarios, proyectos y tareas. PostgreSQL sólo está en vikunja_internal; Vikunja se conecta además a proxy y mail_internal.

Configuración

  • VIKUNJA_DOMAIN forma VIKUNJA_SERVICE_PUBLICURL; incluye HTTPS y la barra final esperada.
  • VIKUNJA_JWT_SECRET firma sesiones. Debe ser aleatorio, exclusivo y estable.
  • VIKUNJA_DB_* debe coincidir en aplicación, healthcheck y PostgreSQL.
  • Las variables VIKUNJA_MAILER_* configuran SMTP y recordatorios.
  • El registro público está desactivado; crea usuarios de forma administrativa.
  • /opt/vikunja/files guarda adjuntos y /opt/vikunja/postgres la base; ambos son necesarios para una restauración completa.

CalDAV está activado para clientes externos; publica siempre mediante HTTPS y revoca credenciales de clientes perdidos.

Requisitos

  • Docker Compose
  • Redes externas proxy y mail_internal
  • Un archivo .env local con dominio, secreto JWT, credenciales PostgreSQL y configuración SMTP
  • Directorios persistentes /opt/vikunja/postgres y /opt/vikunja/files

Despliegue

cd vikunja
docker compose --env-file .env config
docker compose --env-file .env up -d

Operación

docker compose --env-file .env ps
docker compose --env-file .env logs -f vikunja vikunja-db

El registro público está deshabilitado. Traefik publica el servicio usando el dominio configurado en VIKUNJA_DOMAIN.