# Inherit from the official Synapse docker image FROM matrixdotorg/synapse # Install deps RUN apt-get update RUN apt-get install -y supervisor redis nginx RUN rm /etc/nginx/sites-enabled/default # Copy the worker process and log configuration files COPY ./docker/worker.yaml.j2 /conf/worker.yaml.j2 # Expose nginx listener port EXPOSE 8080/tcp # Volume for user-editable config files, logs etc. VOLUME ["/data"] # A script to read environment variables and create the necessary # files to run the desired worker configuration. Will start supervisord. COPY ./docker/configure_workers_and_start.py /configure_workers_and_start.py ENTRYPOINT ["/configure_workers_and_start.py"] # TODO: Healthcheck? Which worker to ask? Can we ask supervisord?