Saltar al contenido principal

Instalación de Wiki.js en DigitalOcean

Versión: 2.x
Tema: Despliegue usando imagen preconfigurada de Docker desde el Marketplace de DigitalOcean


🌐 Introducción

Wiki.js se puede instalar fácilmente en DigitalOcean utilizando una imagen Docker preconfigurada disponible en su Marketplace oficial. Esta imagen es construida y mantenida por los desarrolladores de Wiki.js, y contiene todo lo necesario para comenzar a trabajar de inmediato.


🧰 Especificaciones de la imagen

La imagen desplegada en DigitalOcean incluye:

  • Ubuntu 20.04 LTS con el siguiente software preinstalado:
    • Docker
    • PostgreSQL 11 (dockerizado)
    • Wiki.js 2.x (dockerizado, accesible vía puerto 80)
    • Wiki.js Update Companion (dockerizado)
    • OpenSSH con firewall UFW preconfigurado para SSH, HTTP y HTTPS

✨ Características importantes

  • Soporte para múltiples editores: Markdown, WYSIWYG, HTML puro
  • Capacidades multilingües
  • Sincronización opcional con repositorios Git o respaldo en S3 / DigitalOcean Spaces
  • Soporte para más de 15 proveedores de autenticación (Google, GitHub, LDAP, etc.)
  • Motor de búsqueda incorporado + compatibilidad con Elasticsearch, Azure Search y más
  • Etiquetas y carpetas virtuales para categorizar contenido
  • Personalización visual completa del sitio y de los pipelines de renderizado
  • Plugins útiles como resaltado de código, PlantUML, manejo de multimedia
  • Control de versiones con herramientas de comparación avanzadas

🚀 Pasos para crear el Droplet

  1. Ir a DigitalOcean Marketplace y seleccionar Wiki.js

    ⚠️ Asegúrate de que el publisher sea el equipo oficial de Wiki.js

  2. Crear el droplet con las especificaciones recomendadas. Consulta los requerimientos técnicos antes de continuar.

  3. Copia la IP pública del droplet creado.

  4. Abre en tu navegador la dirección:
    http://YOUR-PUBLIC-IP

  5. Completa la pantalla de configuración:

    • Introduce un correo y contraseña para el administrador
    • Establece la URL final de tu Wiki (ej. wiki.ejemplo.com)
  6. Haz clic en Instalar para completar la instalación inicial.


🔒 Configurar HTTPS con Let's Encrypt

1. Crear registro DNS para subdominio

  • Asegúrate de que tu subdominio (ej. wiki.ejemplo.com) apunte a la IP pública de tu droplet.

2. Conectarse vía SSH al droplet

ssh root@YOUR-PUBLIC-IP

3. Detener y remover el contenedor actual de Wiki.js

docker stop wiki
docker rm wiki

4. Crear nuevo contenedor con HTTPS habilitado

Reemplaza wiki.example.com y admin@example.com por tus valores reales:

docker create --name=wiki \
-e LETSENCRYPT_DOMAIN=wiki.example.com \
-e LETSENCRYPT_EMAIL=admin@example.com \
-e SSL_ACTIVE=1 \
-e DB_TYPE=postgres \
-e DB_HOST=db \
-e DB_PORT=5432 \
-e DB_PASS_FILE=/etc/wiki/.db-secret \
-v /etc/wiki/.db-secret:/etc/wiki/.db-secret:ro \
-e DB_USER=wiki \
-e DB_NAME=wiki \
-e UPGRADE_COMPANION=1 \
--restart=unless-stopped \
-h wiki \
--network=wikinet \
-p 80:3000 -p 443:3443 \
requarks/wiki:2

5. Iniciar el nuevo contenedor

docker start wiki

🔁 Redirección automática HTTP → HTTPS

Por defecto, las peticiones al puerto HTTP no se redirigen automáticamente a HTTPS. Para habilitar esta función, sigue los pasos a continuación:

  1. Inicia sesión en el área de administración de Wiki.js (haz clic en tu avatar en la esquina superior derecha).
  2. En el menú de navegación lateral izquierdo, selecciona SSL.
  3. Busca la sección Redirect HTTP requests to HTTPS.
  4. Haz clic en el botón TURN ON junto a esa opción.
  5. A partir de ese momento, todas las solicitudes que lleguen a través de HTTP serán automáticamente redirigidas a HTTPS.

✅ Esto mejora la seguridad de tu wiki al forzar el uso de conexiones cifradas.