1### 2# Dockerfile for Fossil 3### 4FROM fedora:29 5 6### Now install some additional parts we will need for the build 7RUN dnf update -y && dnf install -y gcc make tcl tcl-devel zlib-devel openssl-devel tar && dnf clean all && groupadd -r fossil -g 433 && useradd -u 431 -r -g fossil -d /opt/fossil -s /sbin/nologin -c "Fossil user" fossil 8 9### If you want to build "trunk", change the next line accordingly. 10ENV FOSSIL_INSTALL_VERSION release 11 12RUN curl "https://fossil-scm.org/home/tarball/fossil-src.tar.gz?name=fossil-src&uuid=${FOSSIL_INSTALL_VERSION}" | tar zx 13RUN cd fossil-src && ./configure --disable-fusefs --json --with-th1-docs --with-th1-hooks --with-tcl=1 --with-tcl-stubs --with-tcl-private-stubs 14RUN cd fossil-src/src && mv main.c main.c.orig && sed s/\"now\"/0/ <main.c.orig >main.c 15RUN cd fossil-src && make && strip fossil && cp fossil /usr/bin && cd .. && rm -rf fossil-src && chmod a+rx /usr/bin/fossil && mkdir -p /opt/fossil && chown fossil:fossil /opt/fossil 16 17### Build is done, remove modules no longer needed 18RUN dnf remove -y gcc make zlib-devel tcl-devel openssl-devel tar && dnf clean all 19 20USER fossil 21 22ENV HOME /opt/fossil 23 24EXPOSE 8080 25 26CMD ["/usr/bin/fossil", "server", "--create", "--user", "admin", "/opt/fossil/repository.fossil"] 27