Upgrade to the 0.11.1 tutum version of docker. Package it as a Dockerfile using Docker in Docker. Add a status server option to the workers to utilize the new termination signal and status features of gantry.

This commit is contained in:
Jake Moshenko 2014-05-16 18:31:24 -04:00
parent 8b5c781f84
commit cc47e77156
12 changed files with 328 additions and 99 deletions

46
Dockerfile.buildworker Normal file
View file

@ -0,0 +1,46 @@
FROM phusion/baseimage:0.9.10
ENV DEBIAN_FRONTEND noninteractive
ENV HOME /root
RUN apt-get update
RUN apt-get install -y git python-virtualenv python-dev libjpeg8 libjpeg62-dev libevent-dev gdebi-core g++ libmagic1
### End common section ###
RUN apt-get install -y lxc
RUN usermod -v 100000-200000 -w 100000-200000 root
ADD binary_dependencies/builder binary_dependencies/builder
RUN gdebi --n binary_dependencies/builder/*.deb
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ADD requirements.txt requirements.txt
RUN virtualenv --distribute venv
RUN venv/bin/pip install -r requirements.txt
ADD buildstatus buildstatus
ADD data data
ADD features features
ADD storage storage
ADD util util
ADD workers workers
ADD app.py app.py
ADD config.py config.py
# Remove this if we ever stop depending on test data for the default config
ADD test test
ADD conf conf
RUN rm -rf /conf/stack
ADD conf/init/tutumdocker.sh /etc/service/tutumdocker/run
ADD conf/init/dockerfilebuild.sh /etc/service/dockerfilebuild/run
VOLUME ["/var/lib/docker", "/var/lib/lxc", "/conf/stack"]
CMD ["/sbin/my_init"]