git - I am trying to install my ejabberd from dockerfile , image is building succesfully but when i hit the run command container exits immediately -
after running container exits immediately. how suppose keep container , ejabberd running? changes should make in dockerfile?
appreciated.
here dockerfile :
from ubuntu:16.04 run set -x && \ apt-get update && \ apt-get install -y \ make \ automake \ gcc \ g++\ libexpat1 \ libexpat1-dev \ libyaml-0-2 \ libyaml-dev \ erlang \ openssl \ zlib1g \ zlib1g-dev \ libpam0g \ libtext-iconv-perl \ libssl-dev\ git \ postgresql postgresql-contrib run apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7f0ceb10 && \ echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.0.list \ apt-get install mongodb-org run mkdir -p /root/.ssh add /.ssh/id_rsa /root/.ssh/id_rsa run chmod 600 /root/.ssh/id_rsa run touch /root/.ssh/known_hosts run ssh-keyscan bitbucket.org >> /root/.ssh/known_hosts run git clone git@bitbucket.org:sample.git run cp -a /sample/. /opt/ejabberd/ run cd /opt/ejabberd && ./autogen.sh && ./configure --enable-user=root --enable-mysql && make && make install expose 5280 run cd /opt/ejabberd/ run chmod +x /opt/ejabberd/run.sh entrypoint ["/opt/ejabberd/run.sh"] here run.sh
#!/bin/bash set -e cd /opt/ejabberd exec sbin/ejabberdctl start "$@" my build command :
sudo docker build --no-cache=true -t sample:ejabb . my run command :
sudo docker run -d -p 5280:5280 -p 5269:5269 -p 5222:5222 -p 4560:4560 sample:ejabb thank you.
solved. suggested https://stackoverflow.com/users/147356/larsks?tab=profile ejabberd process going background , hence container closing.
so "sbin/ejabberdctl foreground" did trick.
thanks.
Comments
Post a Comment