Giter Club home page Giter Club logo

docker-tt-rss's Issues

Download TT-RSS at image build time

Currently, TT-RSS is downloaded when the container is first started using 40-install

So even if I lock the docker image version, depending on when I start the container I might end up with a different version of TT-RSS running.

Looking at other linuxserver repos, other PHP applications like docker-bookstack download the application at image build time.

I'm assuming changing this will not be trivial as TT-RSS is currently downloaded in the /config volume.

alpine base breaks cache_starred_images plugin

Current Behavior

Due to the image being based on alpine (1, 2) it causes the same warnings/issues as people running tt-rss on alpine: https://community.tt-rss.org/t/php-7-3-use-of-undefined-constant-glob-brace/2230/4

Going to tt-rss logs you can see all the same warnings getting spammed very quickly:

E_WARNING (2) | plugins/cache_starred_images/init.php:82 | Invalid argument supplied for foreach()
E_WARNING (2) | plugins/cache_starred_images/init.php:77 | glob() expects parameter 2 to be int, string given
E_WARNING (2) | plugins/cache_starred_images/init.php:77 | Use of undefined constant GLOB_BRACE - assumed 'GLOB_BRACE' (this will throw an Error in a future version of PHP)

PDO error using pgsql driver

When running the container with the pgsql driver the server reports Exception while creating PDO object:SQLSTATE[08006] [7] invalid port number: "tcp://172.17.0.4:5432"

This is the command line:-

docker create \
  --name=tt-rss \
  -e PUID=1000 \
  -e PGID=1000 \
  -e DB_TYPE=pgsql \
  -e DB_NAME=user \
  -e DB_USER=pass \
  -e DB_PASS=database \
  -e SELF_URL_PATH=https://www.example.com/ttrss/ \
  -e TZ=Europe/London \
  -p 127.0.0.1:8081:80 \
  --link tinydatabase:db \
  -v /home/chaz/docker/tt-rss/config:/config:Z \
  --restart unless-stopped \
  linuxserver/tt-rss

I am sorry I do not know what the solution is.

Image not compatible with mariadb 10.4

I had a compose file like this:

version: '2'
...
services:
  db:
    image: mariadb
    ...
  app:
    image: linuxserver/tt-rss
...

Everything was working fine for months now, but since last week the system doesn't Update the feeds anymore.
I spend a lot of time for debugging without finding anything:

  • no error
  • no fail
  • no log or debug
  • manual update via GUI with 'fD' was fine
  • manual single feed update via cmd in container was also fine
  • manual starting autoupdate (with debug): no success and still no error or fail

I then found out, that at the same time the updates stopped, my system (watchtower) updated mariadb:latest from 10.3.x to 10.4.x.
I manually downgraded to 10.3 again (image "mariadb:10.3-bionic") and now everything is fine again, updates are running automatically now.

I don't understand way and especially not why there are no error and why I was able to update the feeds manually.
I'm also not sure whether this is a linuxserver docker-image problem or a tt-rss problem.

So maybe you have a better understanding of you build so you can find the root cause of the problem. Or at least add a hint to the README.md for compatibility issues.

I'm eager to help, just let me know.

ssl port map not work

linuxserver.io

Thanks, team linuxserver.io

currently cert file is generated, but config.php & nginx conf is not ready for ssl.
br.

fever plugin

linuxserver.io

Thanks, team linuxserver.io

Hello, i have regular nginx error. In nginx error.log i see something like:

"2017/03/21 14:46:23 [crit] 287#287: *610 open() "/var/lib/nginx/tmp/fastcgi/2/06/0000000062" failed (13: Permission denied) while reading upstream, client: 192.168.0.6, server: _, request: "POST /plugins/fever/?api&items&with_ids=419622,403444,11396,47491,89016,201017,51877,196907,184500,193202,228047,249027,289814,260797,406323,319767,334850,335967,401364,345866,418769,412057,412217,412377,403604,425003,258920 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.0.5:8020"
2017/03/21 14:48:22 [crit] 287#287: *618 open() "/var/lib/nginx/tmp/fastcgi/3/06/0000000063" failed (13: Permission denied) while reading upstream, client: 192.168.0.6, server: _, request: "POST /plugins/fever/?api&items&with_ids=419622,403444,11396,47491,89016,201017,51877,196907,184500,193202,228047,249027,289814,260797,406323,319767,334850,335967,401364,345866,418769,412057,412217,412377,403604,425003,258920 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.0.5:8020"
2017/03/21 14:50:12 [crit] 287#287: *626 open() "/var/lib/nginx/tmp/fastcgi/4/06/0000000064" failed (13: Permission denied) while reading upstream, client: 192.168.0.6, server: _, request: "POST /plugins/fever/?api&items&with_ids=419622,403444,11396,47491,89016,201017,51877,196907,184500,193202,228047,249027,289814,260797,406323,319767,334850,335967,401364,345866,418769,412057,412217,412377,403604,425003,258920 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.0.5:8020"
2017/03/21 14:50:22 [crit] 287#287: *634 open() "/var/lib/nginx/tmp/fastcgi/5/06/0000000065" failed (13: Permission denied) while reading upstream, client: 192.168.0.6, server: _, request: "POST /plugins/fever/?api&items&with_ids=419622,403444,11396,47491,89016,201017,51877,196907,184500,193202,228047,249027,289814,260797,406323,319767,334850,335967,401364,345866,418769,412057,412217,412377,403604,425003,258920 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.0.5:8020"
2017/03/21 14:52:23 [crit] 287#287: *642 open() "/var/lib/nginx/tmp/fastcgi/6/06/0000000066" failed (13: Permission denied) while reading upstream, client: 192.168.0.6, server: _, request: "POST /plugins/fever/?api&items&with_ids=419622,403444,11396,47491,89016,201017,51877,196907,184500,193202,228047,249027,289814,260797,406323,319767,334850,335967,401364,345866,418769,412057,412217,412377,403604,425003,258920 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.0.5:8020"

I use tt-rss with fever plugin.

Typo in the README file - 'gaurd'

There is a typo in the README.md file in the following quoted paragraph (emphasis mine) where guard is misspelled as gaurd.

The container can configure itself using environment variables, the gaurd for this logic to run is if the variable DB_TYPE is set. The most common variables to set are a URL for the application and a database endpoint. IE:

Can not set booleans using env variables

With version 19.2-ls11.

I set all the variables I need in config.php by using environment variables in docker run.

I tried to set SINGLE_USER_MODE=false. However, in the config.php file generated from the environment variables, I have define('SIMPLE_UPDATE_MODE', 'false'); instead of define('SIMPLE_UPDATE_MODE', false); (note the quotes). This is interpreted as true.

Add environment variables to configure TT-RSS and optional volume

Currently, TT-RSS is stored in the config volume.
It is configured by creating a config.php file in this volume (either manually, or through the installer web ui)

It would be great to have the option to use environment variables to inject the configuration in the container.
In this case, I'm guessing we would need to remove the config volume definition.

We could have 2 different ways to run the container :

  1. The current one, with the config volume
-v <path to data>:/config
  1. Via environment variables
    Basically, we could generate the config.php from the sample config.php-dist and inject all the possibe settings from there.
(no volume on /config)
-e DB_TYPE=pgsql or mysql
-e DB_HOST=localhost
-e DB_USER=fox
-e DB_NAME=fox
-e DB_PASS=XXXXXX
-e DB_PORT=5432 or 3306
-e SELF_URL_PATH=http://example.org/tt-rss
-e [email protected]
...

Feeds not updating, S6 update_daemon2.php file not at linked location

linuxserver.io

Armhf, Raspbian 9 (Stretch) on Raspberry Pi 3 B+

sudo bash
mkdir /home/pi/tt-rss
chown -R pi /home/pi/tt-rss
docker run
-d
--name=tt-rss
-e PUID=1000
-e PGID=1000
-e TZ=America/Los_Angeles
-e DB_TYPE=pgsql
-e DB_HOST=rss.lan
-e DB_USER=ttrss
-e DB_NAME=ttrss
-e DB_PASS=''
-e DB_PORT=5432
-e SELF_URL_PATH=http://rss.lan
-p 80:80
-p 443:443
-v /home/pi/tt-rss:/config
--restart unless-stopped
linuxserver/tt-rss

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.

[s6-init] ensuring user provided files have correct perms...exited 0.

[fix-attrs.d] applying ownership & permissions fixes...

[fix-attrs.d] done.

[cont-init.d] executing container initialization scripts...

[cont-init.d] 10-adduser: executing...


      _         ()


     | |  ___   _    __


     | | / __| | |  /  \ 


     | | \__ \ | | | () |


     |_| |___/ |_|  \__/

Brought to you by linuxserver.io

We gratefully accept donations at:

https://www.linuxserver.io/donate/


GID/UID


User uid: 1000

User gid: 1000


[cont-init.d] 10-adduser: exited 0.

[cont-init.d] 19-newdefault: executing...

[cont-init.d] 19-newdefault: exited 0.

[cont-init.d] 20-config: executing...

[cont-init.d] 20-config: exited 0.

[cont-init.d] 30-config: executing...

DB_TYPE set, injecting env variables into config.php

Creating config.php from the dist file

[cont-init.d] 30-config: exited 0.

[cont-init.d] 30-keygen: executing...

generating self-signed keys in /config/keys, you can replace these with your own keys if required

Generating a RSA private key

..........................................+++++

........+++++

writing new private key to '/config/keys/cert.key'


[cont-init.d] 30-keygen: exited 0.

[cont-init.d] done.

[services.d] starting services

[services.d] done.

nano /run/s6/services/update-feeds/run #shows
#!/usr/bin/with-contenv bash

    s6-setuidgid abc php7 \
    /config/www/tt-rss/update_daemon2.php > /dev/null 2>&1

/config/www$ ls
index.html

(missing tt-rss directory at referenced location)

Thank you for the container, I hope I'm not missing something on my end.

Thanks, team linuxserver.io

latest version of tt-rss

I've tried the tags :latest & :develop which both seem to be outdated compared to the releases @ https://git.tt-rss.org/git/tt-rss/src/master - looking at closed support jobs here there is an indication to use :master for the latest builds? I've been trying to get some plugins working but due to the age of :latest (2yrs?) they are not working....although I'm unsure if the version number shown in tt-rss/preferences of 17.4 has just never been updated by fox?

Hard to move past the current version of tt-rss in this docker while troubleshooting the problem.

Lock Stamp file does not exist

Just installed from dockerhub, verified that I'm using the correct UID and GID for writing files (the lock itself seems to have no problem writing). I've set up the db and everything, but when trying to load feeds I get the following in the error log:

file_get_contents(lock/update_daemon.stamp): failed to open stream: No such file or directory

I've tried deleting the lock file that is present, update_daemon.lock, creating the file manually, and setting permissions to 0777, however the error keeps coming up The docker logs are unhelpful, there isn't anything about any error, just a normal install and startup. Any ideas would be appreciated, thanks!

installation/configuration is very confusing

Hi;

How to reproduce

This is how I spin it as user which have UID:1000 and GID: 1000
so it's not an write permission issue

docker create \
  --name=tt-rss \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/London \
  -p 80:80 \
  -v ./data/tt-rss:/config \
  --restart unless-stopped \
  linuxserver/tt-rss

NGINX SITE-CONFS ?

I beleive the issue is:
The nginx site-confs point to /var/www/html not to /config/www

cat data/tt-rss/nginx/site-confs/default 
server {
        listen 80 default_server;
        root /var/www/html;
ls data/tt-rss/www/
index.html
docker exec tt-rss ls /var/www/html/
CONTRIBUTING.md
COPYING
README.md
api
atom-to-html.xsl
backend.php
cache
classes
config.php
config.php-dist
css
errors.php
feed-icons
images
include
index.php
install
js
lib
locale
lock
messages.pot
opml.php
plugins
plugins.local
prefs.php
public.php
register.php
schema
templates
tests
themes
themes.local
update.php
update_daemon2.php
utils
vendor

What do you think ?

FYI

on a new install I had to

mkdir /config/{cache/{images,upload,export},feed-icons,lock}
chmod 0777 -R /config/{cache,feed-icons,lock}

to make it work


Startup failed

Tiny Tiny RSS was unable to start properly. This usually means a misconfiguration or an incomplete upgrade. Please fix errors indicated by the following messages:
Image cache is not writable (chmod -R 777 cache/images)
Upload cache is not writable (chmod -R 777 cache/upload)
Data export cache is not writable (chmod -R 777 cache/export)
ICONS_DIR defined in config.php is not writable (chmod -R 777 feed-icons).
LOCK_DIRECTORY defined in config.php is not writable (chmod -R 777 lock).

You might want to check tt-rss wiki or the forums for more information. Please search the forums before creating new topic for your question.

Installation of TT-RSS into a subfolder at the www root

While working on creating a subfolder config for the linuxserver/letsencrypt Docker image, I have come to the conclusion that reverse proxying can't fully work unless TT-RSS is also being served from a subfolder. TT-RSS doesn't have a "Base URL" setting, and the SELF_URL_PATH config option doesn't act as a substitute. URI rewriting at the proxy side only goes so far.

The proposed idea is to create a new Docker environmental variable that would let you set the name of the subfolder that TT-RSS will be installed into, rather than directly into /var/www/html. If the variable is omitted, TT-RSS will install into the www root, like before.

SSL certificate problem: unable to get local issuer certificate

linuxserver.io

If you are new to Docker or this application our issue tracker is ONLY used for reporting bugs or requesting features. Please use our discord server for general support.


Expected Behavior

On subcride: https://blog.hackpascal.net/feed/
Couldn't download the specified URL: ; 60 SSL certificate problem: unable to get local issuer certificate

docker run 'linuxserver/tt-rss:cd4b7f19-ls19'
docker exec bash

xxxxxxx@xxxxxxxx:/tmp# curl 'https://blog.hackpascal.net/feed/'
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.haxx.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

Current Behavior

Steps to Reproduce

Environment

OS:
CPU architecture: x86_64/arm32/arm64
How docker service was installed:

Command used to create docker container (run/create/compose/screenshot)

Docker logs

Latest builds seems to break ARM support (Raspberry Pi 3 B+)

linuxserver.io

Thanks for the work on this container, I use it all the time an appreciate your work!

Latest builds seems to break ARM support (Raspberry Pi 3 B+)

Roll back to 19.2-ls21 resolves the issue.

Raspbian Stretch

Log output:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

_ ()
| | ___ _ __
| | / | | | / \
| | _
\ | | | () |
|| |
/ || __/
Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/

GID/UID

User uid: 1000
User gid: 1000

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 19-newdefault: executing...
[cont-init.d] 19-newdefault: exited 0.
[cont-init.d] 20-config: executing...
/var/run/s6/etc/cont-init.d/20-config: line 15: /usr/bin/find: cannot execute binary file: Exec format error
/var/run/s6/etc/cont-init.d/20-config: line 24: /bin/sed: cannot execute binary file: Exec format error
/var/run/s6/etc/cont-init.d/20-config: line 26: /bin/sed: cannot execute binary file: Exec format error
/var/run/s6/etc/cont-init.d/20-config: line 27: /bin/sed: cannot execute binary file: Exec format error
[cont-init.d] 20-config: exited 0.
[cont-init.d] 30-config: executing...

Thanks, team linuxserver.io

recreate www directory + introduce user themes

If there's a need to recreate the www directory, how can this be done. A recreate container doesn't seem to trigger it.

2ndly, Is there a way in pulling the image, that a user theme can be loaded? ie the feedly one?

www folder is empty

A user on discord reported having trouble and seeing an error in their logs so I did some additional testing and here's the results.

I spun up a brand new container with the following compose:

  ttrss:
    container_name: ttrss
    environment:
    - PGID=${PGID}
    - PUID=${PUID}
    - TZ=${TZ}
    image: linuxserver/tt-rss
    ports:
    - ${TTRSS_PORT_80}:80
    restart: unless-stopped
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - ${DOCKERCONFDIR}/ttrss:/config

(some irrelevant parts removed like logging)

The first run had no issues. I stopped and started the container and the second run had the following error in the log:

[cont-init.d] 19-newdefault: executing...
mv: cannot stat '/defaults/default.incontainer': No such file or directory
[cont-init.d] 19-newdefault: exited 0.

I stopped and removed the container and recreated it (same config volume) and it did not have an error.

I stopped the container again and started it again (without recreating) and found the same error once again in the logs.

I checked the script in question that's causing the error and found this

[[ ! -d /config/www/tt-rss ]] && \
mv /defaults/default.incontainer /defaults/default && \
which references /config/www/tt-rss which I do not have. I do have /config/www but no tt-rss inside it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.