Hi Fox,

Since your last update, my instance no longer starts.

db_1         | 2021-03-06 17:32:46.330 UTC [1] LOG:  starting PostgreSQL 12.5 on x86_64-pc-linux-musl, compiled by gcc (Alpine 9.3.0) 9.3.0, 64-bit
db_1         | 2021-03-06 17:32:46.333 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
db_1         | 2021-03-06 17:32:46.335 UTC [1] LOG:  could not create IPv6 socket for address "::": Address family not supported by protocol
db_1         | 2021-03-06 17:32:46.341 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
db_1         | 2021-03-06 17:32:46.355 UTC [20] LOG:  database system was shut down at 2021-03-06 17:23:09 UTC
db_1         | 2021-03-06 17:32:46.359 UTC [1] LOG:  database system is ready to accept connections

runn’s in a loop …

app_1        | pg_isready: option requires an argument: U
app_1        | Try "pg_isready --help" for more information.
app_1        | waiting until db is ready...
updater_1    | pg_isready: option requires an argument: U
updater_1    | Try "pg_isready --help" for more information.
updater_1    | waiting until db is ready...

Thank you.

Sorry, found it! :roll_eyes:

Hi Fox;

this is how you really drive the noobs crazy :smiley: little typo in your wiki

https://git.tt-rss.org/fox/ttrss-docker-compose/wiki#i-m-trying-to-run-cli-tt-rss-scripts-inside-the-container-and-they-complain-about-root

docker exec -it --user app APP_CONTAINER_ID php8 /var/www/html/tt-rss/update.php --help

oh oops. how about now?

https://git.tt-rss.org/fox/ttrss-docker-compose/wiki/Home#i-m-trying-to-run-cli-tt-rss-scripts-inside-the-container-and-they-complain-about-root

Perfect :slight_smile: thank you!

I don’t update my copy of the docker compose repository very often, the last time was months ago, but I had a weird respawn loop in one of the containers recently so I assumed they were out of sync with tt-rss auto updates and I needed to pull in the latest docker-compose repo changes. It has been quite an ordeal.

The first breaking change was the switch to TTRSS_DB_* variables. This was obvious as soon as docker-compose started so while I wasn’t expecting a breaking config change from updating the compose scripts it wasn’t too much of a hassle to fix.

However the docker environment issues were a serious challenge. I’m running on a raspberry pi 3, and while I know this isn’t a common use case I thought you might like to know what’s causing it to break at the moment.

The problem stems from the php8 upgrade. This requires Alpine 3.13, and that version isn’t supported on the raspberry pi. It breaks due to time64-related changes that require a more recent version of Docker than is available in raspbian stable. The errors are confusing and difficult to track down, with messages like ERROR: https://dl-cdn.alpinelinux.org/alpine/v3.13/main: temporary error (try again later) and nslookup: clock_gettime(MONOTONIC) failed.

I haven’t looked into Alpine’s recommended docker configuration change; that might be the better long-term solution but I want to understand the impact of it before I start messing with seccomp profiles.

For now, since php8 isn’t available on alpine 3.12 and I can’t run alpine 3.13, I ended up manually reverting the docker-compose code to php7. That involved s/php8/php7 and s/fpm8/fpm7 across all the files. This seems to be working, but it probably means I won’t be able to pull in further updates to the docker-compose repository very easily (if at all).

I’m not asking for anything to change. I spent an hour or two tracking down the solution so I just hope this helps anyone else looking for a workaround.

there’s a php7 branch: https://git.tt-rss.org/fox/ttrss-docker-compose/src/branch/dynamic-php7

i’ve merged all recent changes there and basically did the same search and replace. i’m not going to promise maintaining it proactively but if something breaks and you report it, i’ll try to merge stuff from master so that it works (again).

Oh thank you!

I’ll keep that in mind for future updates. If raspbian or docker release an update that resolves the Alpine 3.13 situation I’ll let you know.

For anyone that had an interest in this discussion - Caddy v2.4 now has this; see the example “X-Accel-Redirect support” here: reverse_proxy (Caddyfile directive) — Caddy Documentation

I’ve been using tt-rss for probably close to 12-13 years. I recently switched to the docker-compose setup and everything was working great for a few weeks. But for the last 2 days I get “Update daemon is not updating feeds” (and it’s not). I’m a docker noob but I did launch a shell in each of the running containers and tried to look at what’s going on but there were no errors in /var/log or other obvious problems. “docker logs” didn’t seem to have any smoking guns, but I’m not really sure what I’m looking for. Any ideas of where I should look?

Thx

start with getting updater container logs: docker-compose logs updater

Those logs didn’t have any smoking guns but it was enough of a hint for me to notice that there was supposed to be an updater container. docker ps only showed the other 4 running containers. At some point I rebooted (typical braindead IT advice) and figured docker would restart whatever was supposed to be running, but it only restarted the 4 that were running at shutdown (and I didn’t know that there was supposed to be a fifth).

I ran docker-compose up -d and now everything is good. This is probably pretty obvious but like I said I’m new to docker.

Thanks for pointing me in the right direction. Now I have a lot of articles to catch up on…

i wanted to suggest docker-compose ps but figured it would be too obvious :slight_smile:

Yeah, I was using docker commands, not docker-compose. The obvious problem is that docker doesn’t know what is supposed to be running and neither did I.

I have been working on migration from a self hosted instance into docker and would like to point out an omission I found on the wiki FAQ for Docker under Backup and Restore. The command for clearing the database is missing the “-c” option to execute the drop/create part of the command.

psql -h db -U $DB_USER $DB_NAME -e -c “drop schema public cascade; create schema public”

thanks, i’ve fixed this in the wiki.

Today I noticed my feeds weren’t updating so I figured I might as well update the docker images. It’s been a while. Turns out the last time dynamic-php7 was rebased on master (thank you for continuing to do that!) it included a change to alpine 3.14 which would break my setup :wink:

Before asking for it to be reverted I did some more digging. In the last year Docker has been updated on raspberry pi, and libseccomp2 has been updated in a newer raspbian release - but raspbian recommends doing a full reinstall to upgrade :frowning:

Luckily I found instructions for updating libseccomp2 on older raspbian. Turns out lots of people use alpine on an rpi and smarter people than me figured out a solution that avoids downgrading docker security. It works! I’m now using master and php8 :grin:

i’m glad to hear that it worked out for you in the end.

that’s weird. raspbian is basically debian, right? debian has been supporting incremental updates of itself for literal decades now (that’s one of the reasons i’ve been using it in production all these years instead of something like RHEL/clones, can’t imagine reinstalling stuff each major release).

yes, I’m very familiar with upgrading debian in-place :slight_smile:

but their official instructions specifically say that while upgrade is possible, they strongly recommend a reinstall. I guess the target market might find it difficult to recover from a mistake rendering the system unbootable, maybe they’re just being cautious!

8 posts were split to a new topic: Podman-compose + tt-rss

Update-Container problems

I use tt-rss within the recommended docker setup. Since a few days the update-container stopped working. No special entries in the log file:

[15:02:03/15] Child process with PID 22705 reaped.
[15:02:03/15] Child process with PID 22707 seems active but lockfile is unlocked.
[15:02:03/15] Received SIGCHLD, 0 active tasks left.
[15:02:03/15] Received SIGCHLD, 0 active tasks left.
[15:03:02/15] 0 active tasks, next spawn at 60 sec.

The feed update only works when I do an manual update via web gui and log_verbose. The log_verbose looks then like that:

[15:04:37/22940] =================================================================================================================================
[15:04:37/22940] guid 2,https://www.activistpost.com/?p=242739 (hash: {"ver":2,"uid":2,"hash":"SHA1:85b2d73c6ef4b7cb3a5ea6b21aecbcf98521fabd"} compat: SHA1:358640f6c3003f03fac62a127818e8a916766b8a)
[15:04:37/22940] orig date: 1665253797 (2022-10-08 18:29:57)
[15:04:37/22940] title Inflation, High Inflation, Hyperinflation
[15:04:37/22940] link https://www.activistpost.com/2022/10/inflation-high-inflation-hyperinflation.html
[15:04:37/22940] language en
[15:04:37/22940] author Activist Post
[15:04:37/22940] looking for tags...
[15:04:37/22940] tags found: economy, hyperinflation, inflation, thorsten polleit
[15:04:37/22940] done collecting data.
[15:04:37/22940] looking for enclosures...
[15:04:37/22940] article hash: 2f9c038101130eb5e0e32eb389cc11d55d9c8748 [stored=2f9c038101130eb5e0e32eb389cc11d55d9c8748]
[15:04:37/22940] stored article seems up to date [IID: 157639], updating timestamp only.
[15:04:37/22940] =================================================================================================================================
[15:04:37/22940] guid 2,https://www.activistpost.com/?p=242737 (hash: {"ver":2,"uid":2,"hash":"SHA1:514b08d149c04b896eb57e5edf6da1d0fc4a6101"} compat: SHA1:d898796dd82ef971e3c4b863f07dfd0c291fefbb)
[15:04:37/22940] orig date: 1665240205 (2022-10-08 14:43:25)
[15:04:37/22940] title How Americans Rate Federal Agencies
[15:04:37/22940] link https://www.activistpost.com/2022/10/how-americans-rate-federal-agencies.html
[15:04:37/22940] language en
[15:04:37/22940] author Activist Post
[15:04:37/22940] looking for tags...
[15:04:37/22940] tags found: politics, regulations, tyler durden
[15:04:37/22940] done collecting data.
[15:04:37/22940] looking for enclosures...
[15:04:37/22940] article hash: 59753b86054962a9000637ab5a3e487f323c55ef [stored=59753b86054962a9000637ab5a3e487f323c55ef]
[15:04:37/22940] stored article seems up to date [IID: 157640], updating timestamp only.
[15:04:37/22940] =================================================================================================================================
[15:04:37/22940] guid 2,https://www.activistpost.com/?p=242729 (hash: {"ver":2,"uid":2,"hash":"SHA1:9122161c0b0769e48dcb5efc005eaa2b3e2910df"} compat: SHA1:7919c5ce159ce4e485ad430cc1aa667e6ce07c40)
[15:04:37/22940] orig date: 1665239735 (2022-10-08 14:35:35)
[15:04:37/22940] title Markets Are Expecting The Federal Reserve To Save Them – It’s Not Going To Happen
[15:04:37/22940] link https://www.activistpost.com/2022/10/markets-are-expecting-the-federal-reserve-to-save-them-its-not-going-to-happen.html
[15:04:37/22940] language en
[15:04:37/22940] author Activist Post
[15:04:37/22940] looking for tags...
[15:04:37/22940] tags found: brandon smith, economic collapse, economy, stock market, the fed
[15:04:37/22940] done collecting data.
[15:04:37/22940] looking for enclosures...
[15:04:37/22940] article hash: b387bef95d89b2cd8e15a5071139bdbb0fe990f9 [stored=9fd250738e9bbca0edaa28c9577b3a2550d6ca32]
[15:04:37/22940] hash differs, running HOOK_ARTICLE_FILTER handlers...
[15:04:37/22940] plugin data: 
[15:04:37/22940] date: 1665239735 (2022/10/08 14:35:35)
[15:04:37/22940] num_comments: 0
[15:04:37/22940] force catchup: 
[15:04:37/22940] base guid found, checking for user record
[15:04:37/22940] initial score: 0 [including plugin modifier: 0]
[15:04:37/22940] user record FOUND: RID: 157641, IID: 157641
[15:04:37/22940] resulting RID: 157641, IID: 157641
[15:04:37/22940] article updated, but we're forbidden to mark it unread.
[15:04:37/22940] assigning labels [other]...
[15:04:37/22940] assigning labels [filters]...
[15:04:37/22940] resulting article tags: brandon smith, economic collapse, economy, stock market, the fed
[15:04:37/22940] article processed.
[15:04:37/22940] =================================================================================================================================
[15:04:37/22940] purging feed...
[15:04:37/22940] purge_feed: interval 60 days for feed 18, owner: 2, purge unread: 1
[15:04:37/22940] purge_feed: deleted 0 articles.
[15:04:37/22940] update done.

The update interval that is saved within the preference is ignored and no update will be comitted by the docker-update-container.

Please let me know which further logs or informations are needed to get the updater working again.

Thx a a lot for your great work and help.

virse