https://github.com/processone/ejabberd
https://github.com/processone/docker-ejabberd/tree/master/ecs
https://hub.docker.com/r/ejabberd/ecs/tags
https://github.com/processone/ejabberd/blob/master/CONTAINER.md
https://github.com/Robbilie/kubernetes-ejabberd/blob/main/cluster.sh
processone/docker-ejabberd#64 (comment)
https://docs.ejabberd.im/admin/configuration/database/
https://docs.ejabberd.im/admin/configuration/toplevel/#sql-keepalive-interval
Based on cluster start script, thanks to https://github.com/Robbilie/kubernetes-ejabberd
Docker image used: ejabberd/ecs:22.05
- The script generate-ejabberd-yaml.sh may be used to create manifests for various environments.
- An AWS NLB will be created by the chart and a DNS record should be created to access the NLB - may be removed if not necessary.
- The annotations in statefulset will provide metrics for Prometheus and preparation for logging in Elasticsearch.
- Config secrets/ejabberd.yml and secrets/.erlang.cookie should be stored encrypted and be decrypted at manifest generation time.
- Istio template included for ejabberd GUI - may be removed if not necessary.
- AWS EFS included for document uploads - may be removed if not necessary.