FROM ubuntu:18.04
MAINTAINER Hanjo Meinhardt <hanjo@bunix.de>

ARG TTRSS_GIT_TAG=master

RUN apt-get update && apt-get install -y \
  nginx \
  supervisor \
  php7.2-fpm \
  php7.2-cli \
  php7.2-curl \
  php7.2-gd \
  php7.2-json \
  php7.2-pgsql \
  php7.2-mysql \
  php7.2-intl \
  php7.2-mbstring \
  php7.2-xml \
  curl \
  && apt-get clean && rm -rf /var/lib/apt/lists/*

# enable the mcrypt module
#RUN php7enmod mcrypt

# add ttrss as the only nginx site
ADD ttrss.nginx.conf /etc/nginx/sites-available/ttrss
RUN ln -s /etc/nginx/sites-available/ttrss /etc/nginx/sites-enabled/ttrss
RUN rm /etc/nginx/sites-enabled/default

# install ttrss and patch configuration
WORKDIR /var/www

#RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y curl --no-install-recommends && rm -rf /var/lib/apt/lists/* \
#    && apt-get purge -y --auto-remove curl \

RUN curl -SL https://git.tt-rss.org/git/tt-rss/archive/$TTRSS_GIT_TAG.tar.gz | tar xzC /var/www --strip-components 1

RUN cp config.php-dist config.php \
    && chown www-data:www-data -R /var/www \
    && mkdir /var/run/php

# expose only nginx HTTP port
EXPOSE 80

# complete path to ttrss
ENV SELF_URL_PATH http://localhost

# expose default database credentials via ENV in order to ease overwriting
ENV DB_NAME ttrss
ENV DB_USER ttrss
ENV DB_PASS ttrss

# always re-configure database with current ENV when RUNning container, then monitor all services
ADD configure-db.php /configure-db.php
ADD supervisord.conf /etc/supervisor/conf.d/supervisord.conf
CMD php /configure-db.php && supervisord -c /etc/supervisor/conf.d/supervisord.conf