mirror of
https://github.com/x86dev/docker-ttrss
synced 2025-12-11 08:56:01 +00:00
Implemented rolling release support:
- Now basing on image 'kdelfour/supervisor-docker'
- Cron script will check and update TT-RSS and all plugins on a daily basis automatically
- SSL/TLS encryption is off by default so that TT-RSS is running on port 80 by default now
- SSL/TLS can be enabled with setting "-e TTRSS_SSL_ENABLED=1"
- A lot of cleanups
This commit is contained in:
67
Dockerfile
67
Dockerfile
@@ -1,13 +1,13 @@
|
||||
FROM phusion/baseimage
|
||||
FROM kdelfour/supervisor-docker
|
||||
# Initially was based on work of Christian Lück <christian@lueck.tv>
|
||||
MAINTAINER Andreas Löffler <andy@x86dev.com>
|
||||
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y \
|
||||
nginx git ca-certificates php5-fpm php5-cli php5-curl php5-gd php5-json \
|
||||
php5-pgsql
|
||||
php5-pgsql
|
||||
# php5-mysql
|
||||
|
||||
# add ttrss as the only nginx site
|
||||
# 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
|
||||
@@ -21,32 +21,8 @@ RUN sed -i -e "s/;daemonize\s*=\s*yes/daemonize = no/g" /etc/php5/fpm/php-fpm.co
|
||||
# (see /var/log/nginx/error.log for more information then)
|
||||
RUN sed -i -e "s/listen\s*=.*/listen = \/var\/run\/php5-fpm.sock/g" /etc/php5/fpm/pool.d/www.conf
|
||||
|
||||
# install ttrss and patch configuration
|
||||
RUN git clone https://github.com/gothfox/Tiny-Tiny-RSS.git /var/www/ttrss
|
||||
WORKDIR /var/www/ttrss
|
||||
RUN cp config.php-dist config.php
|
||||
RUN sed -i -e "/'SELF_URL_PATH'/s/ '.*'/ 'http:\/\/localhost\/'/" config.php
|
||||
|
||||
# install Feedly theme
|
||||
RUN git clone https://github.com/levito/tt-rss-feedly-theme.git
|
||||
RUN ln -s /var/www/ttrss/tt-rss-feedly-theme/feedly /var/www/ttrss/themes/feedly
|
||||
RUN ln -s /var/www/ttrss/tt-rss-feedly-theme/feedly.css /var/www/ttrss/themes/feedly.css
|
||||
|
||||
# install ttrss-mobilize plugin
|
||||
RUN git clone https://github.com/sepich/tt-rss-mobilize.git /var/www/ttrss/plugins/mobilize
|
||||
ADD ttrss-plugin-mobilize.pgsql /var/www/ttrss/plugins/mobilize/ttrss-plugin-mobilize.pgsql
|
||||
|
||||
# patch ttrss-mobilize plugin for getting it to work
|
||||
RUN sed -i -e "s/<? */<?php/" /var/www/ttrss/plugins/mobilize/m.php
|
||||
|
||||
# install tt-rss-newsplus-plugin (for use with News+ on Android)
|
||||
RUN git clone https://github.com/hrk/tt-rss-newsplus-plugin.git /var/www/ttrss/plugins/api_newsplus
|
||||
RUN ln -s /var/www/ttrss/plugins/api_newsplus/api_newsplus/init.php /var/www/ttrss/plugins/api_newsplus/init.php
|
||||
|
||||
# apply ownership of ttrss + addons to www-data
|
||||
RUN chown www-data:www-data -R /var/www
|
||||
|
||||
# expose nginx HTTPS port
|
||||
# expose Nginx ports
|
||||
EXPOSE 80
|
||||
EXPOSE 443
|
||||
|
||||
# expose default database credentials via ENV in order to ease overwriting
|
||||
@@ -56,22 +32,29 @@ ENV DB_PASS ttrss
|
||||
|
||||
# always re-configure database with current ENV when RUNning container, then monitor all services
|
||||
## @todo pack the scripts to a .zip, ADD this and RUN it in setup.sh. Later.
|
||||
ADD utils.php /root/utils.php
|
||||
ADD configure-db.php /root/configure-db.php
|
||||
ADD configure-plugin-mobilize.php /root/configure-plugin-mobilize.php
|
||||
RUN mkdir -p /srv
|
||||
ADD ttrss-utils.php /srv/ttrss-utils.php
|
||||
ADD ttrss-configure-db.php /srv/ttrss-configure-db.php
|
||||
ADD ttrss-configure-plugin-mobilize.php /srv/ttrss-configure-plugin-mobilize.php
|
||||
ADD ttrss-plugin-mobilize.pgsql /srv/ttrss-plugin-mobilize.pgsql
|
||||
|
||||
# Enable additional system plugins: api_newsplus
|
||||
RUN sed -i -e "s/.*define('PLUGINS'.*/define('PLUGINS', 'api_newsplus, auth_internal, note, updater');/g" /var/www/ttrss/config.php
|
||||
ADD setup-ttrss.sh /srv/setup-ttrss.sh
|
||||
ADD update-ttrss.sh /srv/update-ttrss.sh
|
||||
|
||||
RUN mkdir /etc/service/nginx
|
||||
ADD service-nginx.sh /etc/service/nginx/run
|
||||
# add updater script for rolling release model -- currently runs on a daily basis
|
||||
RUN ln -s /srv/update-ttrss.sh /etc/cron.daily/update-ttrss.sh
|
||||
RUN service cron restart
|
||||
|
||||
RUN mkdir /etc/service/php5-fpm
|
||||
ADD service-php5-fpm.sh /etc/service/php5-fpm/run
|
||||
RUN mkdir -p /etc/supervisor/conf.d
|
||||
ADD service-nginx.conf /etc/supervisor/conf.d/nginx.conf
|
||||
ADD service-php5-fpm.conf /etc/supervisor/conf.d/php5.conf
|
||||
ADD service-ttrss-update.conf /etc/supervisor/conf.d/ttrss-update.conf
|
||||
|
||||
RUN mkdir /etc/service/ttrss-update
|
||||
ADD service-ttrss-update.sh /etc/service/ttrss-update/run
|
||||
RUN /srv/setup-ttrss.sh
|
||||
|
||||
ADD 10_ttrss.sh /etc/my_init.d/10_ttrss.sh
|
||||
CMD /sbin/my_init
|
||||
# clean up
|
||||
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||
|
||||
# start supervisord
|
||||
WORKDIR /srv
|
||||
CMD ["supervisord", "-c", "/etc/supervisor/supervisord.conf"]
|
||||
|
||||
Reference in New Issue
Block a user