summaryrefslogtreecommitdiff
path: root/packaging/docker/catlfish-merge/Dockerfile
blob: 9a82d5fa9850df96e22a2bb80e0824c694e5eedf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Docker file for catlfish merge.
#
# NOTE: The directory on the host system that's mounted at
# /var/local/db/catlfish-merge in the container has to be writable by
# a host user with uid 147.
# 
# $ docker run \
#	-v /etc/catlfish:/usr/local/etc/catlfish:ro \
#	-v /var/local/db/catlfish-merge:/var/local/db/catlfish-merge \
#	catlfish-merge

FROM erlang
RUN apt-get update
RUN echo 'debconf debconf/frontend select noninteractive' | debconf-set-selections
RUN apt-get -y -q install git python-ecdsa python-yaml

WORKDIR /usr/local/src
RUN git clone https://git.nordu.net/catlfish.git

# Config dir and database dir are mounted from host using `-v' to
# 'docker run'.
VOLUME /usr/local/etc/catlfish
VOLUME /var/local/db/catlfish-merge

# Copy merge.sh.
RUN mkdir -p /usr/local/catlfish/bin
ADD merge.sh /usr/local/catlfish/bin/

# Create a catlfish user.
RUN groupadd --gid 147 catlfish
RUN useradd --uid 147 --gid 147 catlfish

# We run from /var/run/catlfish.
RUN mkdir -p /var/run/catlfish/supervisord_log
RUN chown -R catlfish:catlfish /var/run/catlfish
WORKDIR /var/run/catlfish

# Run supervisord.
ADD supervisord.conf /etc/supervisor/
USER catlfish
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/supervisord.conf"]