
Después de iniciar ejabberd 20.12 en Docker, los registros me dicen que debo ejecutar ejabberdctl dump-config para obtener la configuración actual en ejecución.
2021-01-15 01:32:21.039034+00:00 [warning] Listening option 'certfile' of module ejabberd_c2s is deprecated and was automatically appended to global 'certfiles' option. Please adjust your configuration file accordingly. Hint: run `ejabberdctl dump-config` command to view current configuration as it is seen by ejabberd.
Cuando lo ejecuto docker exec -it ejabberd bin/ejabberdctl dump-config
me dice que necesito 1 argumento más...
Error: the command "dump-config" requires 1 more argument.
Es hora de revisar la documentación... Espere un minuto, es imposible encontrar información en línea que mencione ejabberdctl dump-config. Hay información de API sobre dump_config pero no estoy seguro de cómo se traduce en la CLI.
Intenté adivinar cuál era el argumento adicional especificando un archivo de salida, pero no se escribe nada en el archivo. ¿Soy solo yo o falta la documentación de ejabberd?
Respuesta1
Puedes obtener detalles enhttps://docs.ejabberd.im/developer/ejabberd-api/admin-api/#dump-config y en
$ ejabberdctl help dump-config
Command Name: dump_config
Arguments: out::string
Returns: res::rescode
Tags: config
Description: Dump configuration in YAML format as seen by ejabberd
Así por ejemplo:
$ ejabberdctl dump-config $HOME/eja.yml
$ head $HOME/eja.yml
hosts:
- "localhost"
- "192.168.1.23"
loglevel: info
certfiles:
- "/etc/ejabberd/pem-5.pem"
...
Intenté adivinar cuál era el argumento adicional especificando un archivo de salida, pero no se escribe nada en el archivo.
Al especificar la ruta en los argumentos de ejabberdctl u otros comandos API de ejabberd, recuerde especificar siempre la ruta completa como /etc/ejabberd/something.txt
.
Si especifica solo una ruta relativa como something.txt
, se generará en el directorio de trabajo de ejabberd, que probablemente no es donde está ejecutando el script ejabberdctl.