view docker/pubsub/Dockerfile @ 3405:ecdb3728749e

plugin XEP-0353: Jingle Message Initiation implementation: This plugin uses the new `XEP-0166_initiate` trigger to initiate a Jingle session with messages if the peer jid has no resource specified. On reception, if the sender is not in our roster, a confirmation is requested to user to avoid leaking presence and IP. If user refuses the session for somebody not in roster, nothing is sent at all (the request is just ignored).
author Goffi <goffi@goffi.org>
date Thu, 12 Nov 2020 14:53:15 +0100
parents 127dde80a0a5
children fc83c4996c77
line wrap: on
line source

FROM debian:buster

LABEL maintainer="Goffi <tmp_dockerfiles@goffi.org>"

ARG DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get upgrade -y && \
    apt-get install -y --no-install-recommends locales python3-dev python3-venv python3-wheel mercurial libpq-dev gcc postgresql-client && \
    # it's better to have a dedicated user
    useradd -m sat && \
    mkdir /src && chown sat:sat /src && \
    \
    # we need UTF-8 locale
    sed -i "s/# en_US.UTF-8/en_US.UTF-8/" /etc/locale.gen && locale-gen

ENV LC_ALL en_US.UTF-8

WORKDIR /home/sat
COPY entrypoint.sh /home/sat
RUN chown sat:sat /home/sat/entrypoint.sh && chmod 0555 /home/sat/entrypoint.sh

USER sat
RUN python3 -m venv sat_env && sat_env/bin/pip install wheel && cd /src && \
    # we install thoses packages in editable mode, so we can replace them easily with volumes
    hg clone https://repos.goffi.org/sat_tmp && ~/sat_env/bin/pip install -e sat_tmp && \
    mv sat_tmp/sat_tmp.egg-info ~/sat_env/lib/python3.*/site-packages && \
    hg clone https://repos.goffi.org/sat_pubsub && ~/sat_env/bin/pip install -e sat_pubsub && \
    mv sat_pubsub/sat_pubsub.egg-info ~/sat_env/lib/python3.*/site-packages

ENTRYPOINT ["/home/sat/entrypoint.sh"]