view docker/sat_pubsub/Dockerfile @ 138:274af514a5cf

flatpak: reworked packages + made a building script: a new `build_manifest.py` script can now be used to generate flatpak manifests for every frontend of SàT. The manifest can be used both for development versions and stable ones. Templates files (in the form `_tmp_<app-id>.json`) are used to set building instructions. A common runtime specific to SàT has been abandoned following a discussion on the official mailing list. A small wrapper is now used to launch backend automatically if it's not found. Desktop and app metadata have been added for Cagou. Jp and Primitivus don't have appdata and desktop files yet.
author Goffi <goffi@goffi.org>
date Sat, 22 Jun 2019 15:59:07 +0200
parents d493fe1cf095
children
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>

############################
# AUTOMATIC CONFIGURATION  #
############################


COPY scripts/sat_pubsub scripts/launch_postgres_and_pubsub.sh /usr/local/bin/
RUN chown root:root /usr/local/bin/sat_pubsub && \
chmod 0555 /usr/local/bin/sat_pubsub && \
chmod 0555 /usr/local/bin/launch_postgres_and_pubsub.sh && \

########
# BASE #
########

apt-get install -y --no-install-recommends postgresql python-psycopg2 && \
apt-get clean && \
cd /usr/share && \
hg clone https://repos.goffi.org/sat_pubsub && chown -R sat:sat sat_pubsub && \

############
# DATABASE #
############

cd sat_pubsub/db && \

# To simplify installation, we integrate our own PostgreSQL
# future alternate version may use an external PostgreSQL container

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 ["launch_postgres_and_pubsub.sh"]