Tweak slurm configuration to run as non-root user.
[arvados.git] / lib / arvbox / docker / Dockerfile.base
1 FROM debian:8
2
3 RUN apt-get update && \
4     DEBIAN_FRONTEND=noninteractive apt-get -yq install \
5     postgresql-9.4 git gcc golang-go runit \
6     ruby rake bundler curl libpq-dev \
7     libcurl4-openssl-dev libssl-dev zlib1g-dev libpcre3-dev \
8     openssh-server python-setuptools netcat-traditional \
9     libpython-dev fuse libfuse-dev python-pip python-yaml \
10     pkg-config libattr1-dev python-llfuse python-pycurl \
11     libwww-perl libio-socket-ssl-perl libcrypt-ssleay-perl \
12     libjson-perl nginx gitolite3 lsof python-epydoc graphviz \
13     apt-transport-https ca-certificates slurm-wlm
14
15 VOLUME /var/lib/docker
16 VOLUME /var/log/nginx
17 VOLUME /etc/ssl/private
18
19 RUN apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D || \
20     apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
21
22 RUN mkdir -p /etc/apt/sources.list.d && \
23     echo deb https://apt.dockerproject.org/repo debian-jessie main > /etc/apt/sources.list.d/docker.list && \
24     apt-get update && \
25     DEBIAN_FRONTEND=noninteractive apt-get -yq install docker-engine=1.9.1-0~jessie
26
27 RUN rm -rf /var/lib/postgresql && mkdir -p /var/lib/postgresql
28
29 RUN cd /root && \
30     GOPATH=$PWD go get github.com/curoverse/runsvinit && \
31     install bin/runsvinit /usr/local/bin
32
33 ADD fuse.conf /etc/
34
35 ADD crunch-setup.sh gitolite.rc \
36     keep-setup.sh common.sh createusers.sh \
37     logger runsu.sh waitforpostgres.sh \
38     application_yml_override.py \
39     /usr/local/lib/arvbox/
40
41 # Start the supervisor.
42 CMD ["/usr/local/bin/runsvinit"]