Dockerfile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. FROM centos:7
  2. ARG TRAC_VERSION=0.10.5
  3. ENV HOME=/tmp
  4. RUN \
  5. yum install -y python-devel python-setuptools python-setuptools-devel make autoconf automake libtool && \
  6. yum install -y openssh-clients wget mc && \
  7. easy_install pip bzr
  8. RUN cd /usr/src && \
  9. curl -sL https://github.com/edgewall/trac/archive/trac-${TRAC_VERSION}.tar.gz | tar xvz && \
  10. cd trac-trac-${TRAC_VERSION}/ && \
  11. python ./setup.py install && \
  12. cd .. && \
  13. rm -Rf trac-$trac_version/
  14. RUN cd /usr/src/ && \
  15. curl -sL http://www.clearsilver.net/downloads/clearsilver-0.10.5.tar.gz | tar xvz && \
  16. cd clearsilver-0.10.5 && \
  17. ./configure --with-python="/usr/bin/python" --disable-ruby --disable-java --disable-perl --disable-apache --disable-csharp && \
  18. make && make install && \
  19. cd .. && \
  20. rm -Rf clearsilver-0.10.5
  21. COPY eggs /usr/src/eggs
  22. RUN easy_install http://effbot.org/downloads/Imaging-1.1.7.tar.gz && \
  23. easy_install dnspython && \
  24. easy_install spambayes && \
  25. easy_install /usr/src/eggs/0/*.egg && \
  26. easy_install /usr/src/eggs/*.egg
  27. RUN mkdir -p /auth && \
  28. touch /auth/htpasswd && \
  29. touch /auth/htgroups && \
  30. mkdir -p /trac && \
  31. ln -s /auth/htpasswd /trac/.htpasswd && \
  32. ln -s /auth/htgroups /trac/.htgroups && \
  33. mkdir -p /home/csa/ && \
  34. ln -s /trac /home/csa/.trac && \
  35. chmod g=u /etc/passwd
  36. COPY docker-entrypoint.sh /
  37. ENTRYPOINT ["/docker-entrypoint.sh"]
  38. CMD ["tracd", "-p", "8080", "--env-parent-dir", "/trac"]
  39. EXPOSE 8080