server/Dockerfile

62 lines
2.1 KiB
Docker

# /!\ WARNING: the container generated through this Dockerfile is made only for development purpose; it is NOT SAFE or production ready.
FROM debian:wheezy
MAINTAINER Pierre-Olivier Mercier <nemunaire@nemunai.re>
# Install packages ####################################################
RUN apt-get -y update && \
apt-get install -y \
most \
realpath \
nginx-light \
php5-fpm \
php5-mysql \
php5-mcrypt \
libmcrypt4 \
libwww-perl \
libdigest-whirlpool-perl \
libdbi-perl \
libdbd-mysql-perl \
pwgen \
curl \
openssl \
rsync \
openssh-client \
&& \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN useradd -d /var/www/fic-server -M -N -g www-data synchro
# ENVIRONNEMENT #######################################################
EXPOSE 80/tcp 443/tcp
VOLUME ["/var/www/fic-server/out","/var/www/fic-server/files","/var/www/fic-server/submission","/var/www/fic-server/shared"]
WORKDIR /var/www/fic-server
ENTRYPOINT ["/var/www/fic-server/entrypoint.sh"]
CMD service nginx start && \
service php5-fpm start && \
./nginx_gen_team.sh > ./shared/nginx-teams.conf && \
chown www-data ./shared/nginx-teams.conf && \
(./launch.sh &); \
/bin/bash
# Copying files #######################################################
COPY . /var/www/fic-server/
# Configure softwares #################################################
RUN dpkg -i /var/www/fic-server/libmcrypt-perl*.deb || \
(echo "Please build perl-mcrypt first. Consult the given README!"; exit 1) && \
rm /var/www/fic-server/libmcrypt-perl*.deb && \
ln -sf /var/www/fic-server/nginx-server.conf /etc/nginx/sites-enabled/default && \
ln -sf /var/www/fic-server/php-fpm.conf /etc/php5/fpm/pool.d/www.conf && \
\
ln -sf /var/www/fic-server/onyx/config/sample.root.xml /var/www/fic-server/onyx/config/root.xml && \
sed -i "s/challenge-public//" /var/www/fic-server/onyx/config/root.xml && \
chmod 777 /var/www/fic-server/onyx/cache/ /var/www/fic-server/onyx/cache/templates/cache/ /var/www/fic-server/onyx/cache/templates/compile/