PageRenderTime 46ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/Dockerfile

https://gitlab.com/rbax81/VisTrails
Dockerfile | 54 lines | 35 code | 9 blank | 10 comment | 9 complexity | 4138a5755468e7c872271846327ef76d MD5 | raw file
  1. FROM debian:8
  2. MAINTAINER Remi Rampin <remirampin@gmail.com>
  3. # http.debian.net seems to contain bad mirrors, use something else
  4. RUN \
  5. sh -c 'echo "deb http://ftp.us.debian.org/debian jessie main" > /etc/apt/sources.list' && \
  6. sh -c 'echo "deb http://ftp.us.debian.org/debian jessie-updates main" >> /etc/apt/sources.list' && \
  7. sh -c 'echo "deb http://security.debian.org jessie/updates main" >> /etc/apt/sources.list'
  8. # Install VisTrails deps from distrib
  9. RUN \
  10. apt-get update && \
  11. apt-get install -y python python-dateutil python-dev python-docutils \
  12. python-mako python-matplotlib python-mysqldb python-numpy python-paramiko \
  13. python-pip python-scipy python-setuptools python-sphinx python-sqlalchemy \
  14. python-suds python-tz python-unittest2 python-virtualenv \
  15. python-xlrd python-xlwt
  16. RUN \
  17. apt-get install -y python-qt4 python-qt4-gl python-qt4-sql python-vtk \
  18. imagemagick xvfb
  19. # Install IPython deps. python-tornado is too old, so we'll get it from pip
  20. RUN \
  21. apt-get install -y python-zmq
  22. # Makes virtualenv
  23. RUN \
  24. cd /root && \
  25. virtualenv --system-site-packages venv
  26. # These are the only files we need, but `docker build` will still upload
  27. # everything; .dockerignore format is very broken
  28. ADD vistrails /root/vistrails
  29. ADD requirements.txt MANIFEST.in setup.py /root/
  30. # Install missing requirements from pip
  31. RUN \
  32. cd /root && \
  33. . venv/bin/activate && \
  34. pip install -r requirements.txt && \
  35. pip install 'tornado>=4.0' jsonschema
  36. # Warning: using 'setup.py develop' will make setuptools add dist-packages to
  37. # sys.path, which will break everything; don't do it
  38. ADD examples /root/examples
  39. EXPOSE 8888
  40. # VTK needs GL rendering
  41. RUN apt-get install -y libosmesa6 libglapi-mesa libgl1-mesa-swx11 libgl1-mesa-dri
  42. ENTRYPOINT \
  43. cd /root && \
  44. . venv/bin/activate && \
  45. xvfb-run -s "-screen 0 640x480x24" ipython notebook --ip=0.0.0.0 --port=8888