view docker/salut/Dockerfile @ 105:b69056368901

docker: images optimisation: - reduced the number of layers by grouping many instructions - moved stuff which don't change a lot at the beginning, and hg/apt at the end - scripts are not now in scripts/ subdirectories - prosody.cfg.lua is added using ADD instead of getting it online - .hg/dirstate is copied in base (backend) and libervia, so mercurial revision is known - removed lot of useless WORKDIR instruction, they are replaced by "cd" inside RUN instructions - cleaning (apt-clean, rm) is done on the same instruction as the one than generate the data, to avoid useless data in layers
author Goffi <goffi@goffi.org>
date Sun, 28 Feb 2016 02:01:20 +0100
parents 8dd32aa49614
children
line wrap: on
line source

###############################################################
#                                                             #
#                      Salut à Toi/salut                      #
#  This Dockerfile build a Salut directory prepared 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/salut /usr/local/bin/
RUN chown root:root /usr/local/bin/salut && \
chmod 0555 /usr/local/bin/salut && \

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

cd /usr/share && hg clone https://repos.goffi.org/salut sat_salut && chown -R sat:sat sat_salut && \

# configuration is really basic in salut, we just use environment to set data
sed -i 's/^xmppcomponent =.*$/import os\nxmppcomponent = Component("prosody", 5347, "salut."+os.getenv("DOMAIN"), os.getenv("SAT_SALUT_SECRET"))/' sat_salut/salut.tac

WORKDIR /usr/share/sat_salut

USER sat

##########
# LAUNCH #
##########

ENTRYPOINT ["salut"]