diff options
Diffstat (limited to 'latest')
-rw-r--r-- | latest/Dockerfile | 33 | ||||
-rwxr-xr-x | latest/docker-entrypoint.sh | 12 |
2 files changed, 45 insertions, 0 deletions
diff --git a/latest/Dockerfile b/latest/Dockerfile new file mode 100644 index 0000000..47518d5 --- /dev/null +++ b/latest/Dockerfile @@ -0,0 +1,33 @@ +FROM python:2-alpine + +ARG TRAC_VERSION=1.2.4 +ENV HOME=/tmp + +RUN \ + apk update && apk upgrade && apk add --no-cache curl; \ + easy_install pip Genshi pytz Babel docutils Pygments + +RUN cd /usr/src && \ + curl -sL https://github.com/edgewall/trac/archive/trac-${TRAC_VERSION}.tar.gz | tar xvz && \ + cd trac-trac-${TRAC_VERSION}/ && \ + python ./setup.py install && \ + cd .. && \ + rm -Rf trac-$trac_version/ + +RUN pip install 'https://trac-hacks.org/browser/accountmanagerplugin/tags/acct_mgr-0.5.0?rev=17460&format=zip' + +RUN mkdir -p /auth && \ + touch /auth/htpasswd && \ + touch /auth/htgroups && \ + mkdir -p /trac && \ + ln -s /auth/htpasswd /trac/.htpasswd && \ + ln -s /auth/htgroups /trac/.htgroups && \ + mkdir -p /home/csa/ && \ + ln -s /trac /home/csa/.trac && \ + chmod g=u /etc/passwd + +COPY docker-entrypoint.sh / +ENTRYPOINT ["/docker-entrypoint.sh"] +CMD ["tracd", "-p", "8080", "--env-parent-dir", "/trac"] + +EXPOSE 8080 diff --git a/latest/docker-entrypoint.sh b/latest/docker-entrypoint.sh new file mode 100755 index 0000000..f4d9f20 --- /dev/null +++ b/latest/docker-entrypoint.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +set -e + +if ! whoami &> /dev/null; then + if [ -w /etc/passwd ]; then + echo "${USER_NAME:-default}:x:$(id -u):0:${USER_NAME:-default} user:${HOME}:/sbin/nologin" >> /etc/passwd + fi +fi + +echo "Running: $@" +exec "$@" |