Coder Social home page Coder Social logo

x86dev / docker-ttrss Goto Github PK

View Code? Open in Web Editor NEW

This project forked from clue/docker-ttrss

53.0 53.0 41.0 118 KB

Tiny Tiny RSS feed reader as a Docker image.

Shell 46.67% PHP 37.42% Dockerfile 12.18% PLpgSQL 3.74%
container docker feeds rss self-hosted ttrss

docker-ttrss's People

Contributors

clue avatar felixgilles avatar funkypenguin avatar ionathanch avatar jcabillot avatar kid avatar mestery avatar rsilva4 avatar schemen avatar valvin1 avatar x86dev avatar xelarellum avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-ttrss's Issues

SELF_URL_PATH configuration broken since today

With this commit the config file template has changed and the dist entry for SELF_URL_PATH now looks like:

define('SELF_URL_PATH', '%SELF_URL_PATH');

This isn't supported by the current sed-magic used to configure the file and hence ttrss doesn't start anymore after an upgrade.

Subscribe to new feed via URL broken

Since one of the recent release the function used to subscribe to new feeds public.php?op=subscribe&feed_url=%s is broken and give the error:
{"error":{"code":"E_UNKNOWN_METHOD","params":[]}}

PHP: function mime_content_type() is missing

Hi,

On my installation I'm getting a startup error:

PHP function mime_content_type() is missing, try enabling fileinfo module.

Seems that php7-fileinfo extension is missing. Installing it manually solves the issue.

Issue with early start with SQL

If the container of TTRSS is configured with an SQL database and it starts before the SQL server it will serve the error:
Exception while creating PDO object:SQLSTATE[08006] [7] could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
And this even if the SQL server is available afterward.

Solution: restart the TTRSS container everytime.

Is there a workaround this issue ?

PHP Fatal error: Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR: relation "ttrss_version" does not exist

I'm trying to install the image on a Synology NAS via Docker.

I think my configurations are correct
docker-ttrss
Screen Shot 2020-04-23 at 9 42 48 AM
Screen Shot 2020-04-23 at 9 42 58 AM

postgres
Screen Shot 2020-04-23 at 9 43 10 AM

But I get the following error / log when I run everything

date | stream | content
-- | -- | --
2020-04-23 13:32:52 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:52 | stdout | #2 {main}
2020-04-23 13:32:52 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:52 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:52 | stdout | Stack trace:
2020-04-23 13:32:52 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:52 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:52 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:52 | stdout | [13:32:52/393] Spawn interval: 120 sec
2020-04-23 13:32:51 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:51 | stdout | #2 {main}
2020-04-23 13:32:51 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:51 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:51 | stdout | Stack trace:
2020-04-23 13:32:51 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:51 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:51 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:51 | stdout | [13:32:51/389] Spawn interval: 120 sec
2020-04-23 13:32:50 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:50 | stdout | #2 {main}
2020-04-23 13:32:50 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:50 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:50 | stdout | Stack trace:
2020-04-23 13:32:50 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:50 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:50 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:50 | stdout | [13:32:50/385] Spawn interval: 120 sec
2020-04-23 13:32:49 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:49 | stdout | #2 {main}
2020-04-23 13:32:49 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:49 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:49 | stdout | Stack trace:
2020-04-23 13:32:49 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:49 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:49 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:49 | stdout | [13:32:49/381] Spawn interval: 120 sec
2020-04-23 13:32:48 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:48 | stdout | #2 {main}
2020-04-23 13:32:48 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:48 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:48 | stdout | Stack trace:
2020-04-23 13:32:48 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:48 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:48 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:48 | stdout | [13:32:48/377] Spawn interval: 120 sec
2020-04-23 13:32:47 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:47 | stdout | #2 {main}
2020-04-23 13:32:47 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:47 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:47 | stdout | Stack trace:
2020-04-23 13:32:47 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:47 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:47 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:47 | stdout | [13:32:47/373] Spawn interval: 120 sec
2020-04-23 13:32:46 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:46 | stdout | #2 {main}
2020-04-23 13:32:46 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:46 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:46 | stdout | Stack trace:
2020-04-23 13:32:46 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:46 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:46 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:46 | stdout | [13:32:46/369] Spawn interval: 120 sec
2020-04-23 13:32:45 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:45 | stdout | #2 {main}
2020-04-23 13:32:45 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:45 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:45 | stdout | Stack trace:
2020-04-23 13:32:45 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:45 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:45 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:45 | stdout | [13:32:45/365] Spawn interval: 120 sec
2020-04-23 13:32:45 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:45 | stdout | #2 {main}
2020-04-23 13:32:45 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:45 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:45 | stdout | Stack trace:
2020-04-23 13:32:45 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:45 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:45 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:45 | stdout | [13:32:45/361] Spawn interval: 120 sec
2020-04-23 13:32:44 | stdout | thrown in /var/www/ttrss/include/functions.php on line 864
2020-04-23 13:32:44 | stdout | #2 {main}
2020-04-23 13:32:44 | stdout | #1 /var/www/ttrss/update_daemon2.php(201): get_schema_version()
2020-04-23 13:32:44 | stdout | #0 /var/www/ttrss/include/functions.php(864): PDO->query('SELECT schema_v...')
2020-04-23 13:32:44 | stdout | Stack trace:
2020-04-23 13:32:44 | stdout | ^ in /var/www/ttrss/include/functions.php:864
2020-04-23 13:32:44 | stdout | LINE 1: SELECT schema_version FROM ttrss_version
2020-04-23 13:32:44 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "ttrss_version" does not exist
2020-04-23 13:32:43 | stdout | [13:32:43/338] Spawn interval: 120 sec
2020-04-23 13:32:43 | stdout | [23-Apr-2020 13:32:43] NOTICE: ready to handle connections
2020-04-23 13:32:43 | stdout | [23-Apr-2020 13:32:43] NOTICE: fpm is running, pid 342
2020-04-23 13:32:42 | stdout | nginx: [warn] the "ssl" directive is deprecated, use the "listen ... ssl" directive instead in /etc/nginx/nginx.conf:39
2020-04-23 13:32:42 | stdout | [services.d] done.
2020-04-23 13:32:41 | stdout | [services.d] starting services
2020-04-23 13:32:41 | stdout | [cont-init.d] done.
2020-04-23 13:32:40 | stdout | [cont-init.d] 99-ttrss: exited 0.
2020-04-23 13:32:39 | stdout | Setup: Done
2020-04-23 13:32:39 | stdout | Update: Done
2020-04-23 13:32:39 | stdout | Updating: Updating permissions done
2020-04-23 13:32:38 | stdout | Updating: Updating permissions
2020-04-23 13:32:38 | stdout | Already up to date.
2020-04-23 13:32:38 | stdout | * branch            HEAD       -> FETCH_HEAD
2020-04-23 13:32:37 | stdout | From https://github.com/Gravemind/tt-rss-feedlish-theme
2020-04-23 13:32:36 | stdout | /srv/update-ttrss.sh: cd: line 37: can't cd to /var/www/ttrss/themes.local/levito-feedly-git: No such file or directory
2020-04-23 13:32:36 | stdout | Updating: Themes
2020-04-23 13:32:36 | stdout | fatal: unable to access 'https://github.com/feediron/ttrss_plugin-feediron.git/': The requested URL returned error: 504
2020-04-23 13:32:01 | stdout | Updating: FeedIron
2020-04-23 13:32:01 | stdout | Already up to date.
2020-04-23 13:32:01 | stdout | * branch            HEAD       -> FETCH_HEAD
2020-04-23 13:32:00 | stdout | From https://github.com/sepich/tt-rss-mobilize
2020-04-23 13:32:00 | stdout | Updating: Mobilize plugin
2020-04-23 13:32:00 | stdout | Already up to date.
2020-04-23 13:32:00 | stdout | * branch            HEAD       -> FETCH_HEAD
2020-04-23 13:32:00 | stdout | From https://git.tt-rss.org/git/tt-rss
2020-04-23 13:31:58 | stdout | Updating: Tiny Tiny RSS
2020-04-23 13:31:58 | stdout | Setup: Applying updates ...
2020-04-23 13:31:54 | stdout | pgsql:host=172.17.0.3;port=5432;dbname=ttrss;user=ttrss;password=ttrss;Database table for mobilize plugin not found, applying schema...
2020-04-23 13:31:53 | stdout | thrown in /srv/ttrss-configure-db.php on line 82
2020-04-23 13:31:53 | stdout | #1 {main}
2020-04-23 13:31:53 | stdout | #0 /srv/ttrss-configure-db.php(82): PDO->exec('')
2020-04-23 13:31:53 | stdout | Stack trace:
2020-04-23 13:31:53 | stdout | PHP Fatal error:  Uncaught PDOException: SQLSTATE[HY000]: General error: trying to execute an empty query in /srv/ttrss-configure-db.php:82
2020-04-23 13:31:53 | stdout | PHP Warning:  file_get_contents(schema/ttrss_schema_pgsql.sql): failed to open stream: No such file or directory in /srv/ttrss-configure-db.php on line 77
2020-04-23 13:31:53 | stdout | PHP Notice:  Undefined variable: confpath in /srv/ttrss-configure-db.php on line 77
2020-04-23 13:31:53 | stdout | pgsql:host=172.17.0.3;port=5432;dbname=ttrss;user=ttrss;password=ttrss;pgsql:host=172.17.0.3;port=5432;dbname=ttrss;user=ttrss;password=ttrss;Database table not found, applying schema...
2020-04-23 13:31:52 | stdout | Configuring database for: config.php
2020-04-23 13:31:52 | stdout | PHP Notice:  Undefined variable: confpath in /srv/ttrss-configure-db.php on line 8
2020-04-23 13:31:50 | stdout | Setup: Database
2020-04-23 13:31:50 | stdout | Setup: Additional plugins:
2020-04-23 13:31:50 | stdout | Setup: URL is: http://localhost/
2020-04-23 13:31:50 | stdout | Unpacking objects: 100% (16/16) Unpacking objects: 100% (16/16), done.
2020-04-23 13:31:50 | stdout | Unpacking objects:   6% (1/16) Unpacking objects:  12% (2/16) Unpacking objects:  18% (3/16) Unpacking objects:  25% (4/16) Unpacking objects:  31% (5/16) Unpacking objects:  37% (6/16) Unpacking objects:  43% (7/16) Unpacking objects:  50% (8/16) Unpacking objects:  56% (9/16) Unpacking objects:  62% (10/16) Unpacking objects:  68% (11/16) Unpacking objects:  75% (12/16) Unpacking objects:  81% (13/16) Unpacking objects:  87% (14/16) Unpacking objects:  93% (15/16) remote: Total 16 (delta 1), reused 9 (delta 0), pack-reused 0�[K
2020-04-23 13:31:50 | stdout | remote: Compressing objects:   6% (1/15)�[K remote: Compressing objects:  13% (2/15)�[K remote: Compressing objects:  20% (3/15)�[K remote: Compressing objects:  26% (4/15)�[K remote: Compressing objects:  33% (5/15)�[K remote: Compressing objects:  40% (6/15)�[K remote: Compressing objects:  46% (7/15)�[K remote: Compressing objects:  53% (8/15)�[K remote: Compressing objects:  60% (9/15)�[K remote: Compressing objects:  66% (10/15)�[K remote: Compressing objects:  73% (11/15)�[K remote: Compressing objects:  80% (12/15)�[K remote: Compressing objects:  86% (13/15)�[K remote: Compressing objects:  93% (14/15)�[K remote: Compressing objects: 100% (15/15)�[K remote: Compressing objects: 100% (15/15), done.�[K
2020-04-23 13:31:50 | stdout | remote: Counting objects:   6% (1/16)�[K remote: Counting objects:  12% (2/16)�[K remote: Counting objects:  18% (3/16)�[K remote: Counting objects:  25% (4/16)�[K remote: Counting objects:  31% (5/16)�[K remote: Counting objects:  37% (6/16)�[K remote: Counting objects:  43% (7/16)�[K remote: Counting objects:  50% (8/16)�[K remote: Counting objects:  56% (9/16)�[K remote: Counting objects:  62% (10/16)�[K remote: Counting objects:  68% (11/16)�[K remote: Counting objects:  75% (12/16)�[K remote: Counting objects:  81% (13/16)�[K remote: Counting objects:  87% (14/16)�[K remote: Counting objects:  93% (15/16)�[K remote: Counting objects: 100% (16/16)�[K remote: Counting objects: 100% (16/16), done.�[K
2020-04-23 13:31:50 | stdout | remote: Enumerating objects: 16, done.�[K
2020-04-23 13:31:49 | stdout | Cloning into '/var/www/ttrss/themes.local/gravemind-feedly-git'...
2020-04-23 13:31:49 | stdout | fatal: unable to access 'https://github.com/levito/tt-rss-feedly-theme.git/': The requested URL returned error: 504
2020-04-23 13:31:17 | stdout | Cloning into '/var/www/ttrss/themes.local/levito-feedly-git'...
2020-04-23 13:31:17 | stdout | Unpacking objects:  51% (23/45) Unpacking objects:  53% (24/45) Unpacking objects:  55% (25/45) Unpacking objects:  57% (26/45) Unpacking objects:  60% (27/45) Unpacking objects:  62% (28/45) Unpacking objects:  64% (29/45) Unpacking objects:  66% (30/45) Unpacking objects:  68% (31/45) Unpacking objects:  71% (32/45) Unpacking objects:  73% (33/45) Unpacking objects:  75% (34/45) Unpacking objects:  77% (35/45) Unpacking objects:  80% (36/45) Unpacking objects:  82% (37/45) Unpacking objects:  84% (38/45) Unpacking objects:  86% (39/45) Unpacking objects:  88% (40/45) Unpacking objects:  91% (41/45) Unpacking objects:  93% (42/45) Unpacking objects:  95% (43/45) Unpacking objects:  97% (44/45) Unpacking objects: 100% (45/45) Unpacking objects: 100% (45/45), done.
2020-04-23 13:31:17 | stdout | Unpacking objects:   2% (1/45) Unpacking objects:   4% (2/45) Unpacking objects:   6% (3/45) Unpacking objects:   8% (4/45) Unpacking objects:  11% (5/45) Unpacking objects:  13% (6/45) Unpacking objects:  15% (7/45) Unpacking objects:  17% (8/45) Unpacking objects:  20% (9/45) Unpacking objects:  22% (10/45) Unpacking objects:  24% (11/45) Unpacking objects:  26% (12/45) Unpacking objects:  28% (13/45) Unpacking objects:  31% (14/45) Unpacking objects:  33% (15/45) Unpacking objects:  35% (16/45) Unpacking objects:  37% (17/45) Unpacking objects:  40% (18/45) Unpacking objects:  42% (19/45) Unpacking objects:  44% (20/45) Unpacking objects:  46% (21/45) Unpacking objects:  48% (22/45) remote: Total 45 (delta 2), reused 24 (delta 0), pack-reused 0�[K
2020-04-23 13:31:16 | stdout | remote: Compressing objects:   2% (1/41)�[K remote: Compressing objects:   4% (2/41)�[K remote: Compressing objects:   7% (3/41)�[K remote: Compressing objects:   9% (4/41)�[K remote: Compressing objects:  12% (5/41)�[K remote: Compressing objects:  14% (6/41)�[K remote: Compressing objects:  17% (7/41)�[K remote: Compressing objects:  19% (8/41)�[K remote: Compressing objects:  21% (9/41)�[K remote: Compressing objects:  24% (10/41)�[K remote: Compressing objects:  26% (11/41)�[K remote: Compressing objects:  29% (12/41)�[K remote: Compressing objects:  31% (13/41)�[K remote: Compressing objects:  34% (14/41)�[K remote: Compressing objects:  36% (15/41)�[K remote: Compressing objects:  39% (16/41)�[K remote: Compressing objects:  41% (17/41)�[K remote: Compressing objects:  43% (18/41)�[K remote: Compressing objects:  46% (19/41)�[K remote: Compressing objects:  48% (20/41)�[K remote: Compressing objects:  51% (21/41)�[K remote: Compressing objects:  53% (22/41)�[K remote: Compressing objects:  56% (23/41)�[K remote: Compressing objects:  58% (24/41)�[K remote: Compressing objects:  60% (25/41)�[K remote: Compressing objects:  63% (26/41)�[K remote: Compressing objects:  65% (27/41)�[K remote: Compressing objects:  68% (28/41)�[K remote: Compressing objects:  70% (29/41)�[K remote: Compressing objects:  73% (30/41)�[K remote: Compressing objects:  75% (31/41)�[K remote: Compressing objects:  78% (32/41)�[K remote: Compressing objects:  80% (33/41)�[K remote: Compressing objects:  82% (34/41)�[K remote: Compressing objects:  85% (35/41)�[K remote: Compressing objects:  87% (36/41)�[K remote: Compressing objects:  90% (37/41)�[K remote: Compressing objects:  92% (38/41)�[K remote: Compressing objects:  95% (39/41)�[K remote: Compressing objects:  97% (40/41)�[K remote: Compressing objects: 100% (41/41)�[K remote: Compressing objects: 100% (41/41), done.�[K
2020-04-23 13:31:16 | stdout | remote: Counting objects:   2% (1/45)�[K remote: Counting objects:   4% (2/45)�[K remote: Counting objects:   6% (3/45)�[K remote: Counting objects:   8% (4/45)�[K remote: Counting objects:  11% (5/45)�[K remote: Counting objects:  13% (6/45)�[K remote: Counting objects:  15% (7/45)�[K remote: Counting objects:  17% (8/45)�[K remote: Counting objects:  20% (9/45)�[K remote: Counting objects:  22% (10/45)�[K remote: Counting objects:  24% (11/45)�[K remote: Counting objects:  26% (12/45)�[K remote: Counting objects:  28% (13/45)�[K remote: Counting objects:  31% (14/45)�[K remote: Counting objects:  33% (15/45)�[K remote: Counting objects:  35% (16/45)�[K remote: Counting objects:  37% (17/45)�[K remote: Counting objects:  40% (18/45)�[K remote: Counting objects:  42% (19/45)�[K remote: Counting objects:  44% (20/45)�[K remote: Counting objects:  46% (21/45)�[K remote: Counting objects:  48% (22/45)�[K remote: Counting objects:  51% (23/45)�[K remote: Counting objects:  53% (24/45)�[K remote: Counting objects:  55% (25/45)�[K remote: Counting objects:  57% (26/45)�[K remote: Counting objects:  60% (27/45)�[K remote: Counting objects:  62% (28/45)�[K remote: Counting objects:  64% (29/45)�[K remote: Counting objects:  66% (30/45)�[K remote: Counting objects:  68% (31/45)�[K remote: Counting objects:  71% (32/45)�[K remote: Counting objects:  73% (33/45)�[K remote: Counting objects:  75% (34/45)�[K remote: Counting objects:  77% (35/45)�[K remote: Counting objects:  80% (36/45)�[K remote: Counting objects:  82% (37/45)�[K remote: Counting objects:  84% (38/45)�[K remote: Counting objects:  86% (39/45)�[K remote: Counting objects:  88% (40/45)�[K remote: Counting objects:  91% (41/45)�[K remote: Counting objects:  93% (42/45)�[K remote: Counting objects:  95% (43/45)�[K remote: Counting objects:  97% (44/45)�[K remote: Counting objects: 100% (45/45)�[K remote: Counting objects: 100% (45/45), done.�[K
2020-04-23 13:31:16 | stdout | remote: Enumerating objects: 45, done.�[K
2020-04-23 13:31:16 | stdout | Cloning into '/var/www/ttrss/plugins.local/feediron'...
2020-04-23 13:31:16 | stdout | Unpacking objects:  12% (1/8) Unpacking objects:  25% (2/8) Unpacking objects:  37% (3/8) Unpacking objects:  50% (4/8) Unpacking objects:  62% (5/8) Unpacking objects:  75% (6/8) Unpacking objects:  87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
2020-04-23 13:31:16 | stdout | remote: Total 8 (delta 0), reused 8 (delta 0), pack-reused 0�[K
2020-04-23 13:31:16 | stdout | remote: Compressing objects:  12% (1/8)�[K remote: Compressing objects:  25% (2/8)�[K remote: Compressing objects:  37% (3/8)�[K remote: Compressing objects:  50% (4/8)�[K remote: Compressing objects:  62% (5/8)�[K remote: Compressing objects:  75% (6/8)�[K remote: Compressing objects:  87% (7/8)�[K remote: Compressing objects: 100% (8/8)�[K remote: Compressing objects: 100% (8/8), done.�[K
2020-04-23 13:31:16 | stdout | remote: Counting objects:  12% (1/8)�[K remote: Counting objects:  25% (2/8)�[K remote: Counting objects:  37% (3/8)�[K remote: Counting objects:  50% (4/8)�[K remote: Counting objects:  62% (5/8)�[K remote: Counting objects:  75% (6/8)�[K remote: Counting objects:  87% (7/8)�[K remote: Counting objects: 100% (8/8)�[K remote: Counting objects: 100% (8/8), done.�[K
2020-04-23 13:31:16 | stdout | remote: Enumerating objects: 8, done.�[K
2020-04-23 13:31:15 | stdout | Cloning into '/var/www/ttrss/plugins.local/mobilize'...
2020-04-23 13:31:14 | stdout | Resolving deltas:   0% (0/439) Resolving deltas:   1% (5/439) Resolving deltas:   2% (9/439) Resolving deltas:   3% (15/439) Resolving deltas:   4% (19/439) Resolving deltas:   5% (22/439) Resolving deltas:   6% (28/439) Resolving deltas:   8% (37/439) Resolving deltas:  11% (50/439) Resolving deltas:  12% (53/439) Resolving deltas:  13% (59/439) Resolving deltas:  14% (65/439) Resolving deltas:  15% (66/439) Resolving deltas:  17% (75/439) Resolving deltas:  18% (80/439) Resolving deltas:  19% (84/439) Resolving deltas:  20% (88/439) Resolving deltas:  21% (93/439) Resolving deltas:  22% (97/439) Resolving deltas:  23% (102/439) Resolving deltas:  24% (106/439) Resolving deltas:  25% (110/439) Resolving deltas:  26% (115/439) Resolving deltas:  27% (120/439) Resolving deltas:  28% (123/439) Resolving deltas:  29% (128/439) Resolving deltas:  30% (132/439) Resolving deltas:  36% (159/439) Resolving deltas:  44% (194/439) Resolving deltas:  45% (198/439) Resolving deltas:  46% (204/439) Resolving deltas:  47% (210/439) Resolving deltas:  48% (211/439) Resolving deltas:  49% (216/439) Resolving deltas:  50% (220/439) Resolving deltas:  51% (226/439) Resolving deltas:  52% (229/439) Resolving deltas:  53% (234/439) Resolving deltas:  54% (238/439) Resolving deltas:  55% (242/439) Resolving deltas:  58% (258/439) Resolving deltas:  59% (260/439) Resolving deltas:  60% (265/439) Resolving deltas:  61% (271/439) Resolving deltas:  62% (275/439) Resolving deltas:  63% (277/439) Resolving deltas:  64% (281/439) Resolving deltas:  65% (286/439) Resolving deltas:  66% (292/439) Resolving deltas:  67% (295/439) Resolving deltas:  68% (299/439) Resolving deltas:  69% (303/439) Resolving deltas:  71% (312/439) Resolving deltas:  72% (319/439) Resolving deltas:  73% (321/439) Resolving deltas:  74% (325/439) Resolving deltas:  75% (330/439) Resolving deltas:  76% (334/439) Resolving deltas:  77% (339/439) Resolving deltas:  78% (343/439) Resolving deltas:  79% (347/439) Resolving deltas:  80% (352/439) Resolving deltas:  81% (356/439) Resolving deltas:  82% (360/439) Resolving deltas:  83% (365/439) Resolving deltas:  84% (369/439) Resolving deltas:  85% (374/439) Resolving deltas:  86% (378/439) Resolving deltas:  87% (382/439) Resolving deltas:  88% (387/439) Resolving deltas:  89% (391/439) Resolving deltas:  90% (396/439) Resolving deltas:  91% (401/439) Resolving deltas:  92% (404/439) Resolving deltas:  93% (410/439) Resolving deltas:  94% (413/439) Resolving deltas:  95% (418/439) Resolving deltas:  98% (432/439) Resolving deltas: 100% (439/439) Resolving deltas: 100% (439/439), done.
2020-04-23 13:31:14 | stdout | Receiving objects:  96% (2907/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  97% (2938/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  98% (2968/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  99% (2998/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects: 100% (3028/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects: 100% (3028/3028), 3.44 MiB \| 4.46 MiB/s, done.
2020-04-23 13:31:13 | stdout | Receiving objects:   0% (1/3028) Receiving objects:   1% (31/3028) Receiving objects:   2% (61/3028) Receiving objects:   3% (91/3028) Receiving objects:   4% (122/3028) Receiving objects:   5% (152/3028) Receiving objects:   6% (182/3028) Receiving objects:   7% (212/3028) Receiving objects:   8% (243/3028) Receiving objects:   9% (273/3028) Receiving objects:  10% (303/3028) Receiving objects:  11% (334/3028) Receiving objects:  12% (364/3028) Receiving objects:  13% (394/3028) Receiving objects:  14% (424/3028) Receiving objects:  15% (455/3028) Receiving objects:  16% (485/3028) Receiving objects:  17% (515/3028) Receiving objects:  18% (546/3028) Receiving objects:  19% (576/3028) Receiving objects:  20% (606/3028) Receiving objects:  21% (636/3028) Receiving objects:  22% (667/3028) Receiving objects:  23% (697/3028) Receiving objects:  24% (727/3028) Receiving objects:  25% (757/3028) Receiving objects:  26% (788/3028) Receiving objects:  27% (818/3028) Receiving objects:  28% (848/3028) Receiving objects:  29% (879/3028) Receiving objects:  30% (909/3028) Receiving objects:  31% (939/3028) Receiving objects:  32% (969/3028) Receiving objects:  33% (1000/3028) Receiving objects:  34% (1030/3028) Receiving objects:  35% (1060/3028) Receiving objects:  36% (1091/3028) Receiving objects:  37% (1121/3028) Receiving objects:  38% (1151/3028) Receiving objects:  39% (1181/3028) Receiving objects:  40% (1212/3028) Receiving objects:  41% (1242/3028) Receiving objects:  42% (1272/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  43% (1303/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  44% (1333/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  45% (1363/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  46% (1393/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  47% (1424/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  48% (1454/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  49% (1484/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  50% (1514/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  51% (1545/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  52% (1575/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  53% (1605/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  54% (1636/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  55% (1666/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  56% (1696/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  57% (1726/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  58% (1757/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  59% (1787/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  60% (1817/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  61% (1848/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  62% (1878/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  63% (1908/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  64% (1938/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  65% (1969/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  66% (1999/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  67% (2029/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  68% (2060/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  69% (2090/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  70% (2120/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  71% (2150/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  72% (2181/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  73% (2211/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  74% (2241/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  75% (2271/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  76% (2302/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  77% (2332/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  78% (2362/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  79% (2393/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  80% (2423/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  81% (2453/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  82% (2483/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  83% (2514/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  84% (2544/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  85% (2574/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  86% (2605/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  87% (2635/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  88% (2665/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  89% (2695/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  90% (2726/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  91% (2756/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  92% (2786/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  93% (2817/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  94% (2847/3028), 880.00 KiB \| 1.71 MiB/s Receiving objects:  95% (2877/3028), 880.00 KiB \| 1.71 MiB/s remote: Total 3028 (delta 439), reused 1855 (delta 230)
2020-04-23 13:31:12 | stdout | remote: Compressing objects:   0% (1/2675)�[K remote: Compressing objects:   1% (27/2675)�[K remote: Compressing objects:   2% (54/2675)�[K remote: Compressing objects:   3% (81/2675)�[K remote: Compressing objects:   4% (107/2675)�[K remote: Compressing objects:   5% (134/2675)�[K remote: Compressing objects:   6% (161/2675)�[K remote: Compressing objects:   7% (188/2675)�[K remote: Compressing objects:   8% (214/2675)�[K remote: Compressing objects:   9% (241/2675)�[K remote: Compressing objects:  10% (268/2675)�[K remote: Compressing objects:  11% (295/2675)�[K remote: Compressing objects:  12% (321/2675)�[K remote: Compressing objects:  13% (348/2675)�[K remote: Compressing objects:  14% (375/2675)�[K remote: Compressing objects:  15% (402/2675)�[K remote: Compressing objects:  16% (428/2675)�[K remote: Compressing objects:  17% (455/2675)�[K remote: Compressing objects:  18% (482/2675)�[K remote: Compressing objects:  19% (509/2675)�[K remote: Compressing objects:  20% (535/2675)�[K remote: Compressing objects:  21% (562/2675)�[K remote: Compressing objects:  22% (589/2675)�[K remote: Compressing objects:  23% (616/2675)�[K remote: Compressing objects:  24% (642/2675)�[K remote: Compressing objects:  25% (669/2675)�[K remote: Compressing objects:  26% (696/2675)�[K remote: Compressing objects:  27% (723/2675)�[K remote: Compressing objects:  28% (749/2675)�[K remote: Compressing objects:  29% (776/2675)�[K remote: Compressing objects:  30% (803/2675)�[K remote: Compressing objects:  31% (830/2675)�[K remote: Compressing objects:  32% (856/2675)�[K remote: Compressing objects:  33% (883/2675)�[K remote: Compressing objects:  34% (910/2675)�[K remote: Compressing objects:  35% (937/2675)�[K remote: Compressing objects:  36% (963/2675)�[K remote: Compressing objects:  37% (990/2675)�[K remote: Compressing objects:  38% (1017/2675)�[K remote: Compressing objects:  39% (1044/2675)�[K remote: Compressing objects:  40% (1070/2675)�[K remote: Compressing objects:  41% (1097/2675)�[K remote: Compressing objects:  42% (1124/2675)�[K remote: Compressing objects:  43% (1151/2675)�[K remote: Compressing objects:  44% (1177/2675)�[K remote: Compressing objects:  45% (1204/2675)�[K remote: Compressing objects:  46% (1231/2675)�[K remote: Compressing objects:  47% (1258/2675)�[K remote: Compressing objects:  48% (1284/2675)�[K remote: Compressing objects:  49% (1311/2675)�[K remote: Compressing objects:  50% (1338/2675)�[K remote: Compressing objects:  51% (1365/2675)�[K remote: Compressing objects:  52% (1391/2675)�[K remote: Compressing objects:  53% (1418/2675)�[K remote: Compressing objects:  54% (1445/2675)�[K remote: Compressing objects:  55% (1472/2675)�[K remote: Compressing objects:  56% (1498/2675)�[K remote: Compressing objects:  57% (1525/2675)�[K remote: Compressing objects:  58% (1552/2675)�[K remote: Compressing objects:  59% (1579/2675)�[K remote: Compressing objects:  60% (1605/2675)�[K remote: Compressing objects:  61% (1632/2675)�[K remote: Compressing objects:  62% (1659/2675)�[K remote: Compressing objects:  63% (1686/2675)�[K remote: Compressing objects:  64% (1712/2675)�[K remote: Compressing objects:  65% (1739/2675)�[K remote: Compressing objects:  66% (1766/2675)�[K remote: Compressing objects:  67% (1793/2675)�[K remote: Compressing objects:  68% (1819/2675)�[K remote: Compressing objects:  69% (1846/2675)�[K remote: Compressing objects:  70% (1873/2675)�[K remote: Compressing objects:  71% (1900/2675)�[K remote: Compressing objects:  72% (1926/2675)�[K remote: Compressing objects:  73% (1953/2675)�[K remote: Compressing objects:  74% (1980/2675)�[K remote: Compressing objects:  75% (2007/2675)�[K remote: Compressing objects:  76% (2033/2675)�[K remote: Compressing objects:  77% (2060/2675)�[K remote: Compressing objects:  78% (2087/2675)�[K remote: Compressing objects:  79% (2114/2675)�[K remote: Compressing objects:  80% (2140/2675)�[K remote: Compressing objects:  81% (2167/2675)�[K remote: Compressing objects:  82% (2194/2675)�[K remote: Compressing objects:  83% (2221/2675)�[K remote: Compressing objects:  84% (2247/2675)�[K remote: Compressing objects:  85% (2274/2675)�[K remote: Compressing objects:  86% (2301/2675)�[K remote: Compressing objects:  87% (2328/2675)�[K remote: Compressing objects:  88% (2354/2675)�[K remote: Compressing objects:  89% (2381/2675)�[K remote: Compressing objects:  90% (2408/2675)�[K remote: Compressing objects:  91% (2435/2675)�[K remote: Compressing objects:  92% (2461/2675)�[K remote: Compressing objects:  93% (2488/2675)�[K remote: Compressing objects:  94% (2515/2675)�[K remote: Compressing objects:  95% (2542/2675)�[K remote: Compressing objects:  96% (2568/2675)�[K remote: Compressing objects:  97% (2595/2675)�[K remote: Compressing objects:  98% (2622/2675)�[K remote: Compressing objects:  99% (2649/2675)�[K remote: Compressing objects: 100% (2675/2675)�[K remote: Compressing objects: 100% (2675/2675), done.�[K
2020-04-23 13:31:12 | stdout | remote: Counting objects:   0% (1/3028)�[K remote: Counting objects:   1% (31/3028)�[K remote: Counting objects:   2% (61/3028)�[K remote: Counting objects:   3% (91/3028)�[K remote: Counting objects:   4% (122/3028)�[K remote: Counting objects:   5% (152/3028)�[K remote: Counting objects:   6% (182/3028)�[K remote: Counting objects:   7% (212/3028)�[K remote: Counting objects:   8% (243/3028)�[K remote: Counting objects:   9% (273/3028)�[K remote: Counting objects:  10% (303/3028)�[K remote: Counting objects:  11% (334/3028)�[K remote: Counting objects:  12% (364/3028)�[K remote: Counting objects:  13% (394/3028)�[K remote: Counting objects:  14% (424/3028)�[K remote: Counting objects:  15% (455/3028)�[K remote: Counting objects:  16% (485/3028)�[K remote: Counting objects:  17% (515/3028)�[K remote: Counting objects:  18% (546/3028)�[K remote: Counting objects:  19% (576/3028)�[K remote: Counting objects:  20% (606/3028)�[K remote: Counting objects:  21% (636/3028)�[K remote: Counting objects:  22% (667/3028)�[K remote: Counting objects:  23% (697/3028)�[K remote: Counting objects:  24% (727/3028)�[K remote: Counting objects:  25% (757/3028)�[K remote: Counting objects:  26% (788/3028)�[K remote: Counting objects:  27% (818/3028)�[K remote: Counting objects:  28% (848/3028)�[K remote: Counting objects:  29% (879/3028)�[K remote: Counting objects:  30% (909/3028)�[K remote: Counting objects:  31% (939/3028)�[K remote: Counting objects:  32% (969/3028)�[K remote: Counting objects:  33% (1000/3028)�[K remote: Counting objects:  34% (1030/3028)�[K remote: Counting objects:  35% (1060/3028)�[K remote: Counting objects:  36% (1091/3028)�[K remote: Counting objects:  37% (1121/3028)�[K remote: Counting objects:  38% (1151/3028)�[K remote: Counting objects:  39% (1181/3028)�[K remote: Counting objects:  40% (1212/3028)�[K remote: Counting objects:  41% (1242/3028)�[K remote: Counting objects:  42% (1272/3028)�[K remote: Counting objects:  43% (1303/3028)�[K remote: Counting objects:  44% (1333/3028)�[K remote: Counting objects:  45% (1363/3028)�[K remote: Counting objects:  46% (1393/3028)�[K remote: Counting objects:  47% (1424/3028)�[K remote: Counting objects:  48% (1454/3028)�[K remote: Counting objects:  49% (1484/3028)�[K remote: Counting objects:  50% (1514/3028)�[K remote: Counting objects:  51% (1545/3028)�[K remote: Counting objects:  52% (1575/3028)�[K remote: Counting objects:  53% (1605/3028)�[K remote: Counting objects:  54% (1636/3028)�[K remote: Counting objects:  55% (1666/3028)�[K remote: Counting objects:  56% (1696/3028)�[K remote: Counting objects:  57% (1726/3028)�[K remote: Counting objects:  58% (1757/3028)�[K remote: Counting objects:  59% (1787/3028)�[K remote: Counting objects:  60% (1817/3028)�[K remote: Counting objects:  61% (1848/3028)�[K remote: Counting objects:  62% (1878/3028)�[K remote: Counting objects:  63% (1908/3028)�[K remote: Counting objects:  64% (1938/3028)�[K remote: Counting objects:  65% (1969/3028)�[K remote: Counting objects:  66% (1999/3028)�[K remote: Counting objects:  67% (2029/3028)�[K remote: Counting objects:  68% (2060/3028)�[K remote: Counting objects:  69% (2090/3028)�[K remote: Counting objects:  70% (2120/3028)�[K remote: Counting objects:  71% (2150/3028)�[K remote: Counting objects:  72% (2181/3028)�[K remote: Counting objects:  73% (2211/3028)�[K remote: Counting objects:  74% (2241/3028)�[K remote: Counting objects:  75% (2271/3028)�[K remote: Counting objects:  76% (2302/3028)�[K remote: Counting objects:  77% (2332/3028)�[K remote: Counting objects:  78% (2362/3028)�[K remote: Counting objects:  79% (2393/3028)�[K remote: Counting objects:  80% (2423/3028)�[K remote: Counting objects:  81% (2453/3028)�[K remote: Counting objects:  82% (2483/3028)�[K remote: Counting objects:  83% (2514/3028)�[K remote: Counting objects:  84% (2544/3028)�[K remote: Counting objects:  85% (2574/3028)�[K remote: Counting objects:  86% (2605/3028)�[K remote: Counting objects:  87% (2635/3028)�[K remote: Counting objects:  88% (2665/3028)�[K remote: Counting objects:  89% (2695/3028)�[K remote: Counting objects:  90% (2726/3028)�[K remote: Counting objects:  91% (2756/3028)�[K remote: Counting objects:  92% (2786/3028)�[K remote: Counting objects:  93% (2817/3028)�[K remote: Counting objects:  94% (2847/3028)�[K remote: Counting objects:  95% (2877/3028)�[K remote: Counting objects:  96% (2907/3028)�[K remote: Counting objects:  97% (2938/3028)�[K remote: Counting objects:  98% (2968/3028)�[K remote: Counting objects:  99% (2998/3028)�[K remote: Counting objects: 100% (3028/3028)�[K remote: Counting objects: 100% (3028/3028), done.�[K
2020-04-23 13:31:12 | stdout | remote: Enumerating objects: 3028, done.�[K
2020-04-23 13:31:09 | stdout | Cloning into '/var/www/ttrss'...
2020-04-23 13:31:09 | stdout | Setup: Setting up Tiny Tiny RSS (latest revision) ...
2020-04-23 13:31:09 | stdout | Setup:                You have been warned.
2020-04-23 13:31:09 | stdout | Setup: !!! This is not recommended for a production server !!!
2020-04-23 13:31:09 | stdout | Setup: !!! WARNING - No encryption (TLS) used - WARNING    !!!
2020-04-23 13:31:09 | stdout | [cont-init.d] 99-ttrss: executing...
2020-04-23 13:31:08 | stdout | [cont-init.d] 98-wait-for-db: exited 0.
2020-04-23 13:31:08 | stdout | Checking database responds within 1s on 172.17.0.3:5432...
2020-04-23 13:31:08 | stdout | [cont-init.d] 98-wait-for-db: executing...
2020-04-23 13:31:08 | stdout | [cont-init.d] 50-php: exited 0.
2020-04-23 13:31:08 | stdout | rm: can't remove '/usr/sbin/php-fpm': No such file or directory
2020-04-23 13:31:08 | stdout | [cont-init.d] 50-php: executing...
2020-04-23 13:31:08 | stdout | [cont-init.d] executing container initialization scripts...
2020-04-23 13:31:08 | stdout | [fix-attrs.d] done.
2020-04-23 13:31:08 | stdout | [fix-attrs.d] applying ownership & permissions fixes...
2020-04-23 13:31:08 | stdout | [s6-init] ensuring user provided files have correct perms...exited 0.
2020-04-23 13:31:06 | stdout | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.

Visiting the URL gives me a "startup failed, set SELF_URL_PATH" message
Screen Shot 2020-04-23 at 9 46 21 AM

Does anybody have any insight into what's wrong with my configuration?

Reseting by default theme at staturp disabled using an environment variable

Hello,

I was looking if the feedlish will be integrated and I can see it is already done :)

I've seen there is a new feature which reset to default the theme at startup. I understand this feature after what happened recently.

Would it be possible to make it optional using an environment variable with the feature enabled by default ?

I'm not sure users will appreciate to reselect their themes each time I restart the container.

Thank you

Stop depending on automatically created environment variables

To work, the ttrss-configure-db.php script depends on the environment variables automatically created by the "--link" flag of the docker run command. Example: DB_PORT_5432_TCP_ADDR (

$config['DB_HOST'] = env($ename . '_PORT_' . $eport . '_TCP_ADDR');
)

Per the Docker documentation, the --link flag is a legacy feature (https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/). In addition, when creating the TTRSS and POSTGRESSQL containers with a docker-compose file instead of the run command, a bridge network is automatically created and used by these services instead of using the default bridge network. With "user-defined" networks (or docker-compose created networks), as opposed to the default bridge network, those automatic environment variables are not created even when using the "link:" config in the docker-compose file.

I think the script should be changed to use user-specified variables (DB_HOST=postgres, DB_PORT=5432, DB_TYPE=pgsql) if present in the docker-compose file, and if not, continue to be generated by the script from the legacy automatic environment variable.

I think a way of implementing this could be how it was done there around the lines 11-45 https://github.com/clue/docker-ttrss/blob/master/configure-db.php#L28

In the mean time, to make it work I just manually specified in my docker-compose file the environment variables the legacy --link flag was creating, which are:

DB_PORT=tcp://db:5432
DB_PORT_5432_TCP=tcp://db:5432
DB_PORT_5432_TCP_ADDR=db
DB_PORT_5432_TCP_PORT=5432
DB_PORT_5432_TCP_PROTO=tcp

New config/env variables

Seems like a recent change to how config/env are read by TTRSS broke my setup or rather the connection to my postgre DB.

Browser now gives Exception while creating PDO object:SQLSTATE[08006] [7] could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

And while I seemingly managed to get both to talk to each other in the BG (as seen by RAM/CPU usage of the images) by prefixing the DOCKER variables with the new "TTRSS_", the error remains. Any adjustments needed in your image? Sorry, not a coder.

Some sort of maintenance kills update daemon

Hey awesome container....I've got a modified version of it (only so I can build images for Arm32, arm64 and amd64).

Works well, but I've noticed after a couple of days running that the update daemon stops and it replaced by this message:

[13:47:36/301] [MASTER] active jobs: 0, next spawn at 1094400 sec.
Which seems to be about 30 hours. Any ideas why.....and if not why, how to reduce that next spawn time from 30 hours to 30 mins?

More Plugins

Hey,
thx for the container. You could define a folder (e.g. /tmp) which could be mounted as a volume where we could put our favourite plugins.
When creating the container the startup script could copy all the directories from the folder in the plugin folder.
This would be more flexible to use.
What do you think?
Thx

Auto-update included themes (esp Feedlish)?

Since a recent Ttrss commit broke the feed title background in most themes, I was wondering whether the auto-update also pulls the most recent theme. Feedlish already had an update and I'd like to make use of it.
Alternatively, what would be the endpoint for the themes folder, so that I could mount it myself? Thanks in advance.

Edit: My interim solution now was to clone the feedlish git onto my server and mount the folder as /var/www/ttrss/themes.local/gravemind-feedly-git in docker as per your setup-ttrss.sh file

SELF_URL_PATH is not recognized as environment variable

Hi,
Thank you for this nice docker image.
I use it with the letsencrypt nginx proxy.
With the default configuration I cannot access the web page and I get an error with incorrect SELF_URL_PATH.
I tried to set SELF_URL_PATH as an environment variable but it is not used.
I did workaround by passing these environment variables:

  • TTRSS_URL=mysubdomain.mydomain.com
  • TTRSS_PROTO=https
    Setting the TTRSS_PORT as 443 does not work, I had to omit the value (even if it is 443).

I don't know if it is a bug but it should be at least documented to avoid debugging ...

Thanks.

No connection to database

I have setup the postgres db as a container using the following settings in docker-compose:

  ttrssdb:
    container_name: ttrssdb
    image: postgres
    restart: always
    environment:
      - POSTGRES_DB=ttrss
      - POSTGRES_USER=ttrss
      - POSTGRES_PASSWORD=ttrss
      - PGDATA=/pgdata
    volumes:
      - ./volumes/ttrssdb_pgdata:/pgdata

and I use the links directive to connect this container to the ttrss container:

  ttrss:
   container_name: ttrss
   build: ttrss/.
   restart: always
   links:
      - ttrssdb:db
   ports:
      - 127:0.0.1:8080:80
   environment:
      - DB_NAME=ttrss
      - DB_USER=ttrss
      - DB_PASS=ttrss
   depends_on:
      - ttrssdb

but I get errors that the db can't be reached:

ttrss          |        TCP/IP connections on port 5432?</pre>[09:15:21/1249] Spawn interval: 120 sec
ttrss          | <pre>Exception while creating PDO object:SQLSTATE[08006] [7] could not connect to server: Connection refused
ttrss          |        Is the server running on host "localhost" (127.0.0.1) and accepting
ttrss          |        TCP/IP connections on port 5432?
ttrss          | could not connect to server: Address not available
ttrss          |        Is the server running on host "localhost" (::1) and accepting

Am I missing an environment variable? Shouldn't the host "db" be used by ttrss instead of "localhost"?

update to php 7 broke af_zz_imgproxy

The update broke the plugin because mime_content_type has been replaced with finfo_file.
It sure is a problem with ttrss, but i'm just letting you know.

Error on RaspberryPi 4

Beginner here, i get this error message

WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm/v7) and no specific platform was requested

Engine Ver: 20.10.2 (API: 1.41)
Raspi: linux armv7l Raspbian GNU/Linux 10 (buster)
Kernel Ver: 5.10.6-v7l+

How do i get the right version?

php7-intl package missing

Since the rolling upgrade tonight, the update daemon fails with:

PHP UConverter class is missing, it's provided by the Internationalization (intl) module.

The image now also needs php7-intl installed to fulfill this requirement.

Time out on login

Since this morning, my instance is broken without any changes is there another update that broke something? something akin to #48

getting a time-out after the login page everytime.

Trying to recreate db, but ttrss-configure-db.php fails when applying schema

I'd like to start again with a fresh install, so I moved my /data folder out of the way, and expected the docker container to create a new database for my installation, but it appears to fail during the database creation process:

ttrss    | Setup: Database
ttrss    | Configuring database for: /var/www/ttrss/config.php
ttrss_postgres | 2022-02-18 11:14:45.490 UTC [69] FATAL:  password authentication failed for user "ttrss"
ttrss_postgres | 2022-02-18 11:14:45.490 UTC [69] DETAIL:  Role "ttrss" does not exist.
ttrss_postgres | 	Connection matched pg_hba.conf line 100: "host all all all scram-sha-256"
ttrss    | pgsql:host=db;port=5432;dbname=ttrss;user=user;password=password;Database login failed, trying to create ...
ttrss    | pgsql:host=db;port=5432;user=user;password=password;pgsql:host=db;port=5432;dbname=ttrss;user=user;password=password;Database login created and confirmed
ttrss_postgres | 2022-02-18 11:14:46.305 UTC [72] ERROR:  relation "ttrss_feeds" does not exist at character 15
ttrss_postgres | 2022-02-18 11:14:46.305 UTC [72] STATEMENT:  SELECT 1 FROM ttrss_feeds
ttrss    | pgsql:host=db;port=5432;dbname=ttrss;user=user;password=password;Database table not found, applying schema... 
ttrss    | PHP Fatal error:  Uncaught PDOException: SQLSTATE[HY000]: General error: trying to execute an empty query in /srv/ttrss-configure-db.php:82
ttrss    | Stack trace:
ttrss    | #0 /srv/ttrss-configure-db.php(82): PDO->exec()
ttrss    | #1 {main}
ttrss    |   thrown in /srv/ttrss-configure-db.php on line 82

is this a fault in the script?

Schema version is wrong, please upgrade the database.

Hi, I have restored an old backup (20170717110642) and I get this:

$ docker-compose logs web
Attaching to dockerttrss_web_1
web_1  | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
web_1  | [s6-init] ensuring user provided files have correct perms...exited 0.
web_1  | [fix-attrs.d] applying ownership & permissions fixes...
web_1  | [fix-attrs.d] done.
web_1  | [cont-init.d] executing container initialization scripts...
web_1  | [cont-init.d] 50-php: executing... 
web_1  | rm: can't remove '/usr/sbin/php-fpm': No such file or directory
web_1  | [cont-init.d] 50-php: exited 0.
web_1  | [cont-init.d] 98-wait-for-db: executing... 
web_1  | Checking database responds within 1s on db:5432...
web_1  | [cont-init.d] 98-wait-for-db: exited 0.
web_1  | [cont-init.d] 99-ttrss: executing... 
web_1  | fetch http://alpine.gliderlabs.com/alpine/v3.6/main/x86_64/APKINDEX.tar.gz
web_1  | fetch http://alpine.gliderlabs.com/alpine/v3.6/community/x86_64/APKINDEX.tar.gz
web_1  | v3.6.2-245-g794e4591fb [http://alpine.gliderlabs.com/alpine/v3.6/main]
web_1  | v3.6.2-246-g507151eb27 [http://alpine.gliderlabs.com/alpine/v3.6/community]
web_1  | OK: 8445 distinct packages available
web_1  | (1/3) Installing libcrypto1.0 (1.0.2n-r0)
web_1  | (2/3) Installing libssl1.0 (1.0.2n-r0)
web_1  | (3/3) Installing openssl (1.0.2n-r0)
web_1  | Executing busybox-1.26.2-r9.trigger
web_1  | Executing ca-certificates-20161130-r2.trigger
web_1  | OK: 64 MiB in 70 packages
web_1  | Setup: Generating self-signed certificate ...
web_1  | Generating a 4096 bit RSA private key
web_1  | ......................................................................++
web_1  | ...........................................................................................................................++
web_1  | writing new private key to '/etc/ssl/private/ttrss.key'
web_1  | -----
web_1  | Setup: Setting up Tiny Tiny RSS (latest revision) ...
web_1  | Cloning into '/var/www/ttrss'...
web_1  | Cloning into '/var/www/ttrss/plugins/mobilize'...
web_1  | Cloning into '/var/www/ttrss/plugins/feediron'...
web_1  | Cloning into '/var/www/ttrss/themes/feedly-git'...
web_1  | Setup: URL is: https://localhost/
web_1  | Setup: Additional plugins: af_zz_imgproxy
web_1  | Setup: Database
web_1  | Configuring database for: /var/www/ttrss/config.php
web_1  | xxx;Connection to database successful
web_1  | xxx;Setup: Applying updates ...
web_1  | Updating: Tiny Tiny RSS
web_1  | From https://git.tt-rss.org/git/tt-rss
web_1  |  * branch            HEAD       -> FETCH_HEAD
web_1  | Already up-to-date.
web_1  | Updating: Mobilize plugin
web_1  | From https://github.com/sepich/tt-rss-mobilize
web_1  |  * branch            HEAD       -> FETCH_HEAD
web_1  | Already up-to-date.
web_1  | Updating: FeedIron
web_1  | From https://github.com/m42e/ttrss_plugin-feediron
web_1  |  * branch            HEAD       -> FETCH_HEAD
web_1  | Already up-to-date.
web_1  | Updating: Feedly theme
web_1  | From https://github.com/levito/tt-rss-feedly-theme
web_1  |  * branch            HEAD       -> FETCH_HEAD
web_1  | Already up-to-date.
web_1  | Updating: Updating permissions
web_1  | Updating: Updating permissions done
web_1  | Update: Done
web_1  | Setup: Done
web_1  | [cont-init.d] 99-ttrss: exited 0.
web_1  | [cont-init.d] done.
web_1  | [services.d] starting services
web_1  | [services.d] done.
web_1  | [16:00:19/336] Spawn interval: 120 sec
web_1  | Schema version is wrong, please upgrade the database.
web_1  | [16:00:20/366] Spawn interval: 120 sec
web_1  | Schema version is wrong, please upgrade the database.
web_1  | [16:00:21/369] Spawn interval: 120 sec
web_1  | Schema version is wrong, please upgrade the database.
web_1  | [16:00:22/372] Spawn interval: 120 sec
web_1  | Schema version is wrong, please upgrade the database.
web_1  | [16:00:23/375] Spawn interval: 120 sec
web_1  | Schema version is wrong, please upgrade the database.
web_1  | [16:00:24/378] Spawn interval: 120 sec
...

What I can do? Thank you.

Recent error showing up

Has anyone seen this pop up? It just started appearing in the last 24 hours.

PHP Fatal error:  Uncaught PDOException: SQLSTATE[HY000]: General error: 7 no connection to the server in /var/www/ttrss/classes/db/migrations.php:87
�
Stack trace:
#0 /var/www/ttrss/classes/db/migrations.php(87): PDO->query()
#1 /var/www/ttrss/classes/db/migrations.php(80): Db_Migrations->create_migrations_table()
#2 /var/www/ttrss/classes/config.php(398): Db_Migrations->get_version()
#3 /var/www/ttrss/classes/logger/sql.php(15): Config::get_schema_version()
#4 /var/www/ttrss/classes/logger.php(39): Logger_SQL->log_error()
#5 /var/www/ttrss/classes/logger.php(32): Logger->_log_error()
#6 /var/www/ttrss/include/errorhandler.php(81): Logger::log_error()
#7 [internal function]: ttrss_fatal_handler()
�

I haven't yet gone down the "official docker-compose" route yet, in the hope someone using this contain has had this occur.
Version: Tiny Tiny RSS v22.04-b17b4a4 (Unsupported) © 2005-2022 Andrew Dolgov

Does not honor env pass

As mentioned before issue tracking;

docker run -it --name ttrsspg -e DB_HOST=172.17.0.1 -e SU_USER=admin -e DB_USER=ttrss x86dev/docker-ttrss

still results in

PHP Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Connection refused Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432? could not connect to server: Address not available Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432? in /var/www/ttrss/classes/db/pgsql.php on line 21 PHP Warning: pg_last_error(): No PostgreSQL link opened yet in /var/www/ttrss/classes/db/pgsql.php on line 24 Unable to connect to database (as fox to localhost, database fox):[18:01:31/310] Spawn interval: 120 sec PHP Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Connection refused Is the server running on host "localhost" (127.0.0.1) and accepting

error in ttrss setup: GIt repository does not exist

Hi,

it seems that the git repository configured here:

TTRSS_REPO_URL=https://git.tt-rss.org/git/tt-rss.git

does not exist anymore. Exchanging git/ with fox/ (as taken from their website) works. I'm still trying to configure it, though, as I'm currently getting the error (Update: Ok, my fault; had Postgres accidentally misconfigured)

Exception while creating PDO object:SQLSTATE[08006] [7] connection to server on socket "/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
	Is the server running locally and accepting connections on that socket?

and am debugging it. Just FYI.

Regards,
Andre

Edit:// There seems to be an official docker-compose setup: https://git.tt-rss.org/fox/ttrss-docker-compose.git/

I'm not able to use MySQL instead of PostgreSQL

Hey there,

since I have a MySQL instance running, I wanted to switch my TTRSS Container to this database.
I've configured a Database, a Username and Password and inserted the ENV DB_TYPE=mysql to my Docker-Compose File.
Unfortunately it won't let me use a MySQL Database and ist constantly trying to find a Postgre Database.

Here is the output from starting the container:


ttrss    | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
ttrss    | [s6-init] ensuring user provided files have correct perms...exited 0.
ttrss    | [fix-attrs.d] applying ownership & permissions fixes...
ttrss    | [fix-attrs.d] done.
ttrss    | [cont-init.d] executing container initialization scripts...
ttrss    | [cont-init.d] 50-php: executing...
ttrss    | rm: can't remove '/usr/sbin/php-fpm': No such file or directory
ttrss    | [cont-init.d] 50-php: exited 0.
ttrss    | [cont-init.d] 98-wait-for-db: executing...
ttrss    | Checking database responds within 1s on :5432...
ttrss    | Error: you need to provide a host and port to test.
ttrss    | Usage:
ttrss    |    host:port [-t timeout] [-- command args]
ttrss    |   -q | --quiet                        Do not output any status messages
ttrss    |   -t TIMEOUT | --timeout=timeout      Timeout in seconds, zero for no timeout
ttrss    |   -- COMMAND ARGS                     Execute command with args after the test finishes
ttrss    | [cont-init.d] 98-wait-for-db: exited 2.
ttrss    | [cont-init.d] 99-ttrss: executing...
ttrss    | Setup: !!! WARNING - No encryption (TLS) used - WARNING    !!!
ttrss    | Setup: !!! This is not recommended for a production server !!!
ttrss    | Setup:                You have been warned.
ttrss    | Setup: Setting up Tiny Tiny RSS (latest revision) ...
ttrss    | Cloning into '/var/www/ttrss'...
ttrss    | Cloning into '/var/www/ttrss/plugins/mobilize'...
ttrss    | Cloning into '/var/www/ttrss/plugins/feediron'...
ttrss    | Cloning into '/var/www/ttrss/themes/feedly-git'...
ttrss    | Setup: URL is: <URL PAth>
ttrss    | Setup: Additional plugins:
ttrss    | Setup: Database
ttrss    | Configuring database for: /var/www/ttrss/config.php
ttrss    | Error: The env DB_PORT does not exist. Make sure to run with "--link mypostgresinstance:DB"
ttrss    | Error: The env DB_PORT does not exist. Make sure to run with "--link mypostgresinstance:DB"
ttrss    | Setup: Applying updates ...
ttrss    | Updating: Tiny Tiny RSS
ttrss    | fatal: unable to access 'https://git.tt-rss.org/git/tt-rss.git/': The requested URL returned error: 503
ttrss    | Updating: Mobilize plugin
[...]
ttrss    | PHP Warning:  pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Connection refused
ttrss    |      Is the server running on host "localhost" (127.0.0.1) and accepting
ttrss    |      TCP/IP connections on port 5432?
ttrss    | could not connect to server: Address not available
ttrss    |      Is the server running on host "localhost" (::1) and accepting
ttrss    |      TCP/IP connections on port 5432? in /var/www/ttrss/classes/db/pgsql.php on line 21
ttrss    | PHP Warning:  pg_last_error(): No PostgreSQL link opened yet in /var/www/ttrss/classes/db/pgsql.php on line 24
ttrss    | PHP Warning:  pg_last_error(): supplied resource is not a valid PostgreSQL link resource in /var/www/ttrss/classes/db/pgsql.php on line 24
ttrss    | Unable to connect to database (as fox to localhost, database fox):[09:01:57/348] Spawn interval: 120 sec
ttrss    | Unable to connect to database (as fox to localhost, database fox):PHP Warning:  pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Con
nection refused
ttrss    |      Is the server running on host "localhost" (127.0.0.1) and accepting
ttrss    |      TCP/IP connections on port 5432?
ttrss    | could not connect to server: Address not available
ttrss    |      Is the server running on host "localhost" (::1) and accepting
ttrss    |      TCP/IP connections on port 5432? in /var/www/ttrss/classes/db/pgsql.php on line 21
ttrss    | PHP Warning:  pg_last_error(): No PostgreSQL link opened yet in /var/www/ttrss/classes/db/pgsql.php on line 24
ttrss    | PHP Warning:  pg_last_error(): supplied resource is not a valid PostgreSQL link resource in /var/www/ttrss/classes/db/pgsql.php on line 24
ttrss    | [09:01:58/351] Spawn interval: 120 sec
ttrss    | Unable to connect to database (as fox to localhost, database fox):PHP Warning:  pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Con
nection refused
ttrss    |      Is the server running on host "localhost" (127.0.0.1) and accepting
ttrss    |      TCP/IP connections on port 5432?
ttrss    | could not connect to server: Address not available
ttrss    |      Is the server running on host "localhost" (::1) and accepting
ttrss    |      TCP/IP connections on port 5432? in /var/www/ttrss/classes/db/pgsql.php on line 21
ttrss    | PHP Warning:  pg_last_error(): No PostgreSQL link opened yet in /var/www/ttrss/classes/db/pgsql.php on line 24
ttrss    | PHP Warning:  pg_last_error(): supplied resource is not a valid PostgreSQL link resource in /var/www/ttrss/classes/db/pgsql.php on line 24
Gracefully stopping... (press Ctrl+C again to force)

My Docker-Compose File looks like this:

version: '2'

services:
  ttrss:
    image: x86dev/docker-ttrss
    container_name: ttrss
    ports:
      - "<OutsidePort>:8080"
    environment:
      VIRTUAL_HOST: <VirtualHostName>
      VIRTUAL_PORT: 8080
      SELF_URL_PATH: <self Url Path>
      TTRSS_SELF_URL: <self Url Path>
      TTRSS_PROTO: http
      TTRSS_URL: <Url Path>
      DB_TYPE: mysql
      DB_NAME: ttrss
      DB_USER: ttrss
      DB_PASS: <super secret password>
    external_links:
      - mysql:db

Is there something wrong with my setup?

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.