Closed relbraun closed 2 years ago
Same thing happens to me with ejabberd/ecs:21.12
, each time I run an ejabberdctl
command, even ejabberdctl status
, it spawns the same threads which aren't killed.
I can reproduce that problem using the images with tags 21.12, 21.07 and 21.04:
~ $ ps -all | grep epmd | wc -l
15
~ $ bin/ejabberdctl status
~ $ bin/ejabberdctl status
~ $ bin/ejabberdctl status
~ $ ps -all | grep epmd | wc -l
21
But 21.01 works correctly! Probably the problem was introduced in this commit and the subsequent ones https://github.com/processone/docker-ejabberd/commit/9adadc6999573b0ed383026fe3139a2f336b8329
Now comes the interesting thing: using a recent image from last month, the problem disappears!
Maybe this got solved in the recent image when alpine was updated from 3.11 to 3.14 (see bd19f3e33d50394e0c7330ce38862eaf7283da8f), or because the recent image builds ejabberd release using elixir's mix instead of distillery (see 2ae9f006a3989a0203442be19e2b42cb76a0c345)
Anyway, the latest image available works for me, so hopefully the next release will work too. If you want to give a try, download from: https://github.com/processone/docker-ejabberd/actions/runs/1980534974 and please comment if that solves the problem for you or not.
Why is there a dedicated ejabberdctl
for the docker image?
Maybe because it requires some customizations to benefit from docker features?
Version: latest
I run the command:
docker run --name ejabberd -d -p 5222:5222 ejabberd/ecs
and then I run:
docker exec -it ejabberd bin/ejabberdctl status
Every time I run this command I see new 4 lines on
htop
console: