forked from blallo/Feedati
[d] Fix messy Dockerfile-tt-rss
This commit is contained in:
parent
cf273adc19
commit
628492c481
2 changed files with 48 additions and 23 deletions
|
@ -1,33 +1,36 @@
|
||||||
FROM ulsmith/alpine-apache-php7
|
FROM ulsmith/alpine-apache-php7
|
||||||
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/
|
|
||||||
|
|
||||||
|
|
||||||
|
RUN apk add --update \
|
||||||
|
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/
|
||||||
|
COPY docker/setup_openrc.sh /usr/local/bin/
|
||||||
COPY tt-rss/* /app/public/tt-rss/
|
COPY tt-rss/* /app/public/tt-rss/
|
||||||
COPY docker/ttrss-openrc-apache /etc/init.d/apache
|
COPY docker/ttrss-openrc-apache /etc/init.d/apache
|
||||||
COPY docker/ttrss-openrc-ttrssupdate /etc/init.d/ttrssupdate
|
COPY docker/ttrss-openrc-ttrssupdate /etc/init.d/ttrssupdate
|
||||||
COPY docker/ttrss-openrc-ntpd /etc/init.d/ntpd
|
COPY docker/ttrss-openrc-ntpd /etc/init.d/ntpd
|
||||||
|
|
||||||
RUN mkdir -p /app/public/tt-rss/ /var/cache/tt-rss/images \
|
RUN mkdir -p /app/public/tt-rss/ /var/cache/tt-rss/images \
|
||||||
/var/cache/tt-rss/upload /var/cache/tt-rss/export/ \
|
/var/cache/tt-rss/upload /var/cache/tt-rss/export/ \
|
||||||
/var/cache/tt-rss/js /var/lock/tt-rss/ && \
|
/var/cache/tt-rss/js /var/lock/tt-rss/ \
|
||||||
chown -R apache:root /app/public /var/cache/tt-rss/ /var/lock/tt-rss/ && \
|
&& chown -R apache:root \
|
||||||
# thanks https://github.com/neeravkumar/dockerfiles/blob/master/alpine-openrc/Dockerfile
|
/app/public \
|
||||||
# Tell openrc its running inside a container, till now that has meant LXC
|
/var/cache/tt-rss/ \
|
||||||
sed -i 's/#rc_sys=""/rc_sys="lxc"/g' /etc/rc.conf &&\
|
/var/lock/tt-rss/ \
|
||||||
# Tell openrc loopback and net are already there, since docker handles the networking
|
&& /usr/local/bin/setup_openrc.sh \
|
||||||
echo 'rc_provide="loopback net"' >> /etc/rc.conf &&\
|
&& apk --no-cache add util-linux \
|
||||||
# can't get ttys unless you run the container in privileged mode
|
&& rc-update add ntpd \
|
||||||
sed -i '/tty/d' /etc/inittab &&\
|
&& rc-update add apache \
|
||||||
# can't set hostname since docker sets it
|
&& rc-update add ttrssupdate
|
||||||
sed -i '/hostname $opts/d' /etc/init.d/hostname &&\
|
|
||||||
# can't mount tmpfs since not privileged
|
|
||||||
sed -i '/mount -t tmpfs/d' /lib/rc/sh/init.sh &&\
|
|
||||||
# can't do cgroups
|
|
||||||
sed -i '/cgroup_add_service$/d' /lib/rc/sh/openrc-run.sh &&\
|
|
||||||
sed -i '/^ntpd/d' /bootstrap/start.sh &&\
|
|
||||||
echo -e 'log_errors = On\nerror_log = syslog' >> /etc/php7/php.ini &&\
|
|
||||||
sed -i -r 's@ErrorLog .*@ErrorLog "|/usr/bin/logger -n syslog -T -P 514 -t apacheErr"@i' /etc/apache2/httpd.conf &&\
|
|
||||||
echo 'TransferLog "|/usr/bin/logger -n syslog -T -P 514 -t apacheLog"' >> /etc/apache2/httpd.conf &&\
|
|
||||||
rc-update add ntpd && rc-update add apache && rc-update add ttrssupdate
|
|
||||||
|
|
||||||
|
|
||||||
ENTRYPOINT []
|
ENTRYPOINT []
|
||||||
|
|
22
docker/setup_openrc.sh
Executable file
22
docker/setup_openrc.sh
Executable file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
|
||||||
|
# thanks https://github.com/neeravkumar/dockerfiles/blob/master/alpine-openrc/Dockerfile
|
||||||
|
# Tell openrc its running inside a container, till now that has meant LXC
|
||||||
|
sed -i 's/#rc_sys=""/rc_sys="lxc"/g' /etc/rc.conf
|
||||||
|
# Tell openrc loopback and net are already there, since docker handles the networking
|
||||||
|
echo 'rc_provide="loopback net"' >> /etc/rc.conf
|
||||||
|
# can't get ttys unless you run the container in privileged mode
|
||||||
|
sed -i '/tty/d' /etc/inittab
|
||||||
|
# can't set hostname since docker sets it
|
||||||
|
sed -i '/hostname $opts/d' /etc/init.d/hostname
|
||||||
|
# can't mount tmpfs since not privileged
|
||||||
|
sed -i '/mount -t tmpfs/d' /lib/rc/sh/init.sh
|
||||||
|
# can't do cgroups
|
||||||
|
sed -i '/cgroup_add_service$/d' /lib/rc/sh/openrc-run.sh
|
||||||
|
sed -i '/^ntpd/d' /bootstrap/start.sh
|
||||||
|
echo -e 'log_errors = On\nerror_log = syslog' >> /etc/php7/php.ini
|
||||||
|
sed -i -r 's@ErrorLog .*@ErrorLog "|/usr/bin/logger -n syslog -T -P 514 -t apacheErr"@i' \
|
||||||
|
/etc/apache2/httpd.conf
|
||||||
|
echo 'TransferLog "|/usr/bin/logger -n syslog -T -P 514 -t apacheLog"' \
|
||||||
|
>> /etc/apache2/httpd.conf
|
Reference in a new issue