Dockerfile-tt-rss 1.9 KB

123456789101112131415161718192021222324252627282930313233343536
  1. FROM ulsmith/alpine-apache-php7
  2. RUN apk update && apk upgrade && apk add util-linux php7-pgsql php7-fileinfo openrc postgresql-client && apk del php7-pdo_mysql php7-pdo_odbc php7-pdo_sqlite db php7-redis php7-ftp && rm -rf /var/cache/apk/
  3. COPY tt-rss/* /app/public/tt-rss/
  4. COPY docker/ttrss-openrc-apache /etc/init.d/apache
  5. COPY docker/ttrss-openrc-ttrssupdate /etc/init.d/ttrssupdate
  6. COPY docker/ttrss-openrc-ntpd /etc/init.d/ntpd
  7. RUN mkdir -p /app/public/tt-rss/ /var/cache/tt-rss/images \
  8. /var/cache/tt-rss/upload /var/cache/tt-rss/export/ \
  9. /var/cache/tt-rss/js /var/lock/tt-rss/ && \
  10. chown -R apache:root /app/public /var/cache/tt-rss/ /var/lock/tt-rss/ && \
  11. # thanks https://github.com/neeravkumar/dockerfiles/blob/master/alpine-openrc/Dockerfile
  12. # Tell openrc its running inside a container, till now that has meant LXC
  13. sed -i 's/#rc_sys=""/rc_sys="lxc"/g' /etc/rc.conf &&\
  14. # Tell openrc loopback and net are already there, since docker handles the networking
  15. echo 'rc_provide="loopback net"' >> /etc/rc.conf &&\
  16. # can't get ttys unless you run the container in privileged mode
  17. sed -i '/tty/d' /etc/inittab &&\
  18. # can't set hostname since docker sets it
  19. sed -i '/hostname $opts/d' /etc/init.d/hostname &&\
  20. # can't mount tmpfs since not privileged
  21. sed -i '/mount -t tmpfs/d' /lib/rc/sh/init.sh &&\
  22. # can't do cgroups
  23. sed -i '/cgroup_add_service$/d' /lib/rc/sh/openrc-run.sh &&\
  24. sed -i '/^ntpd/d' /bootstrap/start.sh &&\
  25. echo -e 'log_errors = On\nerror_log = syslog' >> /etc/php7/php.ini &&\
  26. sed -i -r 's@ErrorLog .*@ErrorLog "|/usr/bin/logger -n syslog -T -P 514 -t apacheErr"@i' /etc/apache2/httpd.conf &&\
  27. echo 'TransferLog "|/usr/bin/logger -n syslog -T -P 514 -t apacheLog"' >> /etc/apache2/httpd.conf &&\
  28. rc-update add ntpd && rc-update add apache && rc-update add ttrssupdate
  29. ENTRYPOINT []
  30. CMD ["/sbin/init"]
  31. # vim: set ft=dockerfile: