Mercurial > sat_docs
view docker/sat_pubsub/Dockerfile @ 80:686a8c982c3f
docker: updated Dockerfiles:
- use HTTPS URLs instead of HTTP
- prosody image know use prosody Debian repository instead of Debian Jessie version, prosody 0.10 is used
- prosody configuration is now in prosody directory next to Dockerfile, instead of using difficult to maintain sed calls
- community modules are downloaded from mercurial, and only needed ones are kept
- no more remote-roster hack \o/
- pubsub component is not at pubsub.[domain] (was sat-pubsub before)
- SàT media are gotten from hg instead of ftp, so they are up-to-date with SàT version
- libervia image now use pip for txJSON-RPC
- fixed now needed jinja2 installation
- fixed libervia/admin accounts auto-creation script
- fixed uid/gid for prosody in data image
- removed not needed anymore nox option in base image
- added python-pip in base image
- docker images now work with current dev version (0.6.0D)
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 12 Feb 2016 20:24:24 +0100 |
parents | 0e78c8a4626e |
children | 8dd32aa49614 |
line wrap: on
line source
############################################################### # # # Salut à Toi/sat_pubsub # # This Dockerfile build a SàT Pubsub service for SàT # # Salut à Toi is a multi-frontends multi-purposes XMPP client # # # ############################################################### FROM salutatoi/base:latest MAINTAINER Goffi <goffi@goffi.org> ######## # BASE # ######## RUN apt-get install -y --no-install-recommends postgresql RUN apt-get install -y --no-install-recommends python-psycopg2 RUN apt-get clean # This script launch SàT PubSub with domain and secret gotten from prosody container # it make the configuration more easy RUN echo '#!/usr/bin/env python2\n\ import os, xmlrpclib\n\ os.chdir("/usr/share/sat_pubsub")\n\ proxy = xmlrpclib.ServerProxy("http://prosody:9999/")\n\ domain = proxy.getenv("DOMAIN")\n\ secret = proxy.getenv("SAT_PUBSUB_SECRET")\n\ os.execlp("twistd", "twistd", "-n", "sat_pubsub", "--rhost", "prosody",\ "--jid", "pubsub.%s" % domain, "--secret", secret)\n\ ' > /usr/local/bin/sat_pubsub && chmod 0555 /usr/local/bin/sat_pubsub WORKDIR /usr/share RUN hg clone https://repos.goffi.org/sat_pubsub && chown -R sat:sat sat_pubsub ############ # DATABASE # ############ WORKDIR sat_pubsub/db # To simplify installation, we integrate our own PostgreSQL # future alternate version may use an external PostgreSQL container USER root RUN service postgresql start; su -c "createuser -d -w sat" postgres; su -c "createdb pubsub" postgres; su -c "psql pubsub < pubsub.sql" sat; service postgresql stop ########## # LAUNCH # ########## # we need to launch PostgreSQL, so we launch as root then switch to sat user ENTRYPOINT ["/bin/sh","-c", "service postgresql start && su -c sat_pubsub sat"]