Mercurial > sat_docs
diff docker_legacy/libervia/Dockerfile @ 164:29873a41aae1
docker: new docker files are now in sat main repos, this one is legacy
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 01 Jan 2021 18:33:52 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/docker_legacy/libervia/Dockerfile Fri Jan 01 18:33:52 2021 +0100 @@ -0,0 +1,93 @@ +#################################################################### +# # +# Salut à Toi/Libervia # +# This Dockerfile build Libervia, the web frontend for Salut à Toi # +# Salut à Toi is a multi-frontends multi-purposes XMPP client # +# # +#################################################################### + +FROM salutatoi/media:latest + +MAINTAINER Goffi <goffi@goffi.org> + +##################### +# FIRST LAUNCH TEST # +##################### + +COPY scripts/libervia_cont_launch /usr/bin/ + +RUN chown root:root /usr/bin/libervia_cont_launch && \ +chmod 0555 /usr/bin/libervia_cont_launch && \ + +######### +# D-Bus # +######### + +cp /usr/local/bin/dbus_wrap /usr/local/bin/libervia_cont_launch && \ + +################# +# CONFIGURATION # +################# + +# we want to use certificates in /usr/share/sat/certificates +echo "\n[libervia]\n\ +tls_private_key = /usr/share/sat/certificates/libervia.key\n\ +tls_certificate = /usr/share/sat/certificates/libervia.crt\n\ +connection_type = both\n\ +redirect_to_https = 0" >> /etc/sat.conf + +################ +# dependencies # +################ + +RUN pip install txJSON-RPC && \ + +apt-get install -y --no-install-recommends python-jinja2 && apt-get clean && \ + +########### +# PYJAMAS # +########### + +cd /tmp && \ + +# as the situation with pyjamas is complicated, we get the archive from our own ftp +python -c 'import urllib2,tarfile,cStringIO;tar=tarfile.open(fileobj=cStringIO.StringIO(urllib2.urlopen("https://ftp.goffi.org/pyjamas/pyjamas.tar.bz2").read()));tar.extractall()' && \ + +cd pyjamas && \ + +python bootstrap.py && \ + +ln -s /tmp/pyjamas/bin/pyjsbuild /usr/local/bin/pyjsbuild && \ + +############ +# LIBERVIA # +############ + +cd /tmp && hg clone https://repos.goffi.org/libervia && \ + +cd libervia && \ + +python setup.py install && \ + +# as for SàT backend, we save repos data +# so Libervia can get repository version +# TODO: should be done in setup.py in the future +python -c 'from sat.tools import utils;utils.getRepositoryData("/tmp/libervia", is_path=True, save_dir_path="/usr/local/lib/python2.7/dist-packages/libervia")' && \ + +# some cleaning before finishing the layer +cd /tmp && rm -rf libervia pyjamas /usr/local/bin/pyjsbuild + +######### +# Ports # +######### + +# HTTP and HTTPS +EXPOSE 8080 8443 + +########## +# LAUNCH # +########## + +USER sat + +ENTRYPOINT ["libervia_cont_launch", "fg"]