Skip to content

yken-neky/eja-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Descripción

Este repositorio contiene la configuración y los módulos personalizados para desplegar un contenedor Docker de ejabberd con extensiones propias. El objetivo es facilitar un entorno reproducible y aislado para probar y validar nuevos módulos sin depender de un servidor externo.

Estructura del proyecto

  • Dockerfile: Imagen base y pasos de construcción.
  • docker-compose.yml: Definición de servicios y volúmenes.
  • modules/: Código fuente de los módulos personalizados.
  • config/ejabberd.yml: Archivo de configuración principal de ejabberd.
  • scripts/: Utilidades para compilación e instalación de módulos.

Requisitos

  • Docker >= 20.10
  • Docker Compose >= 1.29
  • Acceso de lectura/escritura al directorio de módulos

Montaje del contenedor

  1. Clona el repositorio.
  2. Coloca tus módulos en modules/ respetando la estructura de ejabberd.
  3. Ajusta las variables de entorno en docker-compose.yml si es necesario.
  4. Ejecuta docker-compose up --build para construir y arrancar el contenedor.

Funcionamiento interno

Al iniciar, el contenedor:

  1. Sincroniza y actualiza las especificaciones de módulos (scripts/actualizar_modulos.sh).
  2. Compila e instala los módulos personalizados (scripts/instalar_modulos.sh).
  3. Inicia ejabberd usando la configuración de config/ejabberd.yml.

Pruebas de mensajes

  • Utiliza clientes XMPP apuntando a localhost:5222.
  • Verifica envíos entre usuarios y múltiples recursos.
  • Revisa los logs en /var/log/ejabberd/ejabberd.log.

Versiones utilizadas

  • Ejabberd: 23.12
  • Erlang/OTP: 24.3
  • Docker: 20.10.22
  • Docker Compose: 1.29.2

Mantenimiento y actualización

  • Para agregar nuevos módulos, solo colócalos en modules/ y reinicia el contenedor.
  • Ejecuta scripts/limpiar.sh para limpiar compilaciones previas.
  • Actualiza la versión de ejabberd modificando la etiqueta en el Dockerfile.

Licencia

Este proyecto se distribuye bajo licencia MIT. Consulta el archivo LICENSE para más detalles.

About

Este repositorio contiene la configuración y los módulos personalizados para desplegar un contenedor Docker de ejabberd con extensiones propias. El objetivo es facilitar un entorno reproducible y aislado para probar y validar nuevos módulos sin depender de un servidor externo.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors