FROM debian:stretch MAINTAINER Yaltik - Fabien Bourgeois # http://bugs.python.org/issue19846 # > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK. ENV LANG C.UTF-8 # Flectra dependencies from Debian APT repository RUN apt-get update \ && apt-get install -y --no-install-recommends \ build-essential git mercurial curl \ libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libjpeg-dev libpq-dev \ libfreetype6-dev libssl1.0-dev \ python3-dev python3-setuptools python3-pip \ nodejs node-less xz-utils \ postgresql-client-9.6 # Handle Node PATH RUN ln -s /usr/bin/nodejs /usr/bin/node # WKHTMLTOPDF and fonts RUN curl -o wkhtmltox.tar.xz -SL https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz \ && echo '3f923f425d345940089e44c1466f6408b9619562 wkhtmltox.tar.xz' | sha1sum -c - \ && tar xvf wkhtmltox.tar.xz \ && cp wkhtmltox/lib/* /usr/local/lib/ \ && cp wkhtmltox/bin/* /usr/local/bin/ \ && cp -r wkhtmltox/share/man/man1 /usr/local/share/man/ # Packages cleanup RUN apt-get purge -y --auto-remove \ && apt-get clean \ && rm -r ./wkhtmltox* # Create flectra user RUN useradd flectra -md /opt/flectra # Install Flectra 1.0 latest ENV FLECTRA_BRANCH 1.0 WORKDIR /opt/flectra # Default user USER flectra RUN mkdir pipcache data backups extra-addons custom-addons RUN git clone -b ${FLECTRA_BRANCH} --depth 1 https://gitlab.com/flectra-hq/flectra RUN pip3 install --user -U pip RUN .local/bin/pip3 install --user -r flectra/requirements.txt # Launch scripts COPY ./launch.sh ./ COPY ./genconf.sh ./ # Post-install tasks RUN touch flectra.conf # Flectra default ports EXPOSE 7072 7073 # Volumes : data dir for filestore and addons VOLUME /opt/flectra/data CMD [ "bash", "launch.sh" ]