为judger增加supervisor

This commit is contained in:
virusdefender 2016-04-22 19:09:34 +08:00
parent 9bd0881e20
commit 1e73eca339
No known key found for this signature in database
GPG Key ID: 1686FB5677979E61
3 changed files with 30 additions and 5 deletions

View File

@ -1,6 +1,4 @@
FROM ubuntu:14.04
RUN mkdir /var/install/
WORKDIR /var/install/
ENV DEBIAN_FRONTEND noninteractive
RUN rm /etc/apt/sources.list
COPY sources.list /etc/apt/
@ -11,11 +9,12 @@ RUN echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-
RUN echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
RUN apt-get update
RUN apt-get install -y oracle-java7-installer
RUN git clone https://github.com/QingdaoU/Judger
RUN cd Judger && python setup.py install
RUN cd /tmp && git clone https://github.com/QingdaoU/Judger && cd Judger && python setup.py install
RUN mkdir -p /var/judger/run/ && mkdir /var/judger/test_case/ && mkdir /var/judger/code/
RUN chmod -R 777 /var/judger/run/
COPY policy /var/judger/run/
COPY supervisord.conf /etc
RUN pip install supervisor
WORKDIR /var/judger/code/judge/
EXPOSE 8080
CMD python server.py
CMD bash /var/judger/code/dockerfiles/judger/run.sh

View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
python -m compileall /var/judger/code
exec supervisord

View File

@ -0,0 +1,23 @@
[supervisord]
logfile=/var/judger/code/judge/log/judger_supervisord.log
logfile_maxbytes=50MB
logfile_backups=10
loglevel=info
pidfile=/var/judger/code/judge/log/judger_supervisord.pid
nodaemon=true
childlogdir=/var/judger/code/judge/log/
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock
[program:judger_server]
command=python server.py
directory=/var/judger/code/judge/
numprocs=1
stdout_logfile=/var/judger/code/judge/log/judger_server.log
stderr_logfile=/var/judger/code/judge/log/judger_server.log
autostart=true
autorestart=true
startsecs=5
stopwaitsecs = 5
killasgroup=true