Compare commits
4 Commits
8af50b0642
...
ddf6feae45
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ddf6feae45 | ||
|
|
a53e8b019d | ||
|
|
4ba71cdbcb | ||
|
|
d9979e0762 |
@@ -1,4 +1,4 @@
|
|||||||
FROM nginx:1.19.7-alpine
|
FROM nginx:1.21.1-alpine
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
apk add --no-cache \
|
apk add --no-cache \
|
||||||
@@ -21,6 +21,7 @@ RUN \
|
|||||||
php7-mbstring \
|
php7-mbstring \
|
||||||
php7-json \
|
php7-json \
|
||||||
php7-fileinfo \
|
php7-fileinfo \
|
||||||
|
php7-pcntl \
|
||||||
git \
|
git \
|
||||||
tar
|
tar
|
||||||
|
|
||||||
@@ -29,7 +30,7 @@ EXPOSE 80 443
|
|||||||
RUN \
|
RUN \
|
||||||
git clone https://git.tt-rss.org/fox/tt-rss.git /var/lib/tt-rss && \
|
git clone https://git.tt-rss.org/fox/tt-rss.git /var/lib/tt-rss && \
|
||||||
cd /var/lib/tt-rss && \
|
cd /var/lib/tt-rss && \
|
||||||
git checkout 861a632ac7c283c55dfd947ed0152d9846fa2ac0 && \
|
git checkout 73d14338abde1925dc11fce013a939d3704122e7 && \
|
||||||
rm -R .git
|
rm -R .git
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
@@ -39,7 +40,6 @@ COPY nginx.conf /etc/nginx/conf.d/default.conf
|
|||||||
COPY php-fpm.conf /etc/php7/php-fpm.d/ttrss.conf
|
COPY php-fpm.conf /etc/php7/php-fpm.d/ttrss.conf
|
||||||
COPY install-db.php /var/lib/tt-rss-install/install-db.php
|
COPY install-db.php /var/lib/tt-rss-install/install-db.php
|
||||||
COPY supervisor.conf /var/lib/tt-rss-install/supervisor.conf
|
COPY supervisor.conf /var/lib/tt-rss-install/supervisor.conf
|
||||||
COPY manage-supervisord.py /var/lib/tt-rss-install/manage-supervisord.py
|
|
||||||
COPY config.php /var/lib/tt-rss/config.php
|
COPY config.php /var/lib/tt-rss/config.php
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ dokku letsencrypt:auto-renew ttrss
|
|||||||
|
|
||||||
* Upgrade base image in `Dockerfile`: https://hub.docker.com/_/nginx?tab=tags
|
* Upgrade base image in `Dockerfile`: https://hub.docker.com/_/nginx?tab=tags
|
||||||
* Upgrade TTRSS commit in `Dockerfile`
|
* Upgrade TTRSS commit in `Dockerfile`
|
||||||
* Propagate updates in `config.php-dist` to `config.php`: https://git.tt-rss.org/fox/tt-rss/src/master/config.php-dist
|
* Propagate configuration changes updates to `config.php`: https://git.tt-rss.org/fox/tt-rss/src/branch/master/classes/config.php
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
dokku postgres:export ttrss-postgres-12_2 > ttrss.db
|
dokku postgres:export ttrss-postgres-12_2 > ttrss.db
|
||||||
|
|||||||
152
config.php
152
config.php
@@ -1,147 +1,19 @@
|
|||||||
<?php
|
<?php
|
||||||
// *******************************************
|
|
||||||
// *** Database configuration (important!) ***
|
|
||||||
// *******************************************
|
|
||||||
|
|
||||||
preg_match('#^postgres://(.*):(.*)@(.*):(.*)/(.*)$#', getenv('DATABASE_URL'), $matches);
|
preg_match('#^postgres://(.*):(.*)@(.*):(.*)/(.*)$#', getenv('DATABASE_URL'), $matches);
|
||||||
define('DB_TYPE', "pgsql");
|
putenv('TTRSS_DB_TYPE=pgsql');
|
||||||
define('DB_HOST', $matches[3]);
|
putenv('TTRSS_DB_HOST=' . $matches[3]);
|
||||||
define('DB_USER', $matches[1]);
|
putenv('TTRSS_DB_USER=' . $matches[1]);
|
||||||
define('DB_NAME', $matches[5]);
|
putenv('TTRSS_DB_NAME=' . $matches[5]);
|
||||||
define('DB_PASS', $matches[2]);
|
putenv('TTRSS_DB_PASS=' . $matches[2]);
|
||||||
define('DB_PORT', $matches[4]);
|
putenv('TTRSS_DB_PORT=' . $matches[4]);
|
||||||
|
|
||||||
define('MYSQL_CHARSET', 'UTF8');
|
putenv('TTRSS_SELF_URL_PATH=' . getenv('SELF_URL_PATH'));
|
||||||
// Connection charset for MySQL. If you have a legacy database and/or experience
|
|
||||||
// garbage unicode characters with this option, try setting it to a blank string.
|
|
||||||
|
|
||||||
// ***********************************
|
putenv('TTRSS_SINGLE_USER_MODE=false');
|
||||||
// *** Basic settings (important!) ***
|
putenv('TTRSS_SIMPLE_UPDATE_MODE=false');
|
||||||
// ***********************************
|
|
||||||
|
|
||||||
define('SELF_URL_PATH', getenv('SELF_URL_PATH'));
|
putenv('TTRSS_CHECK_FOR_UPDATES=false');
|
||||||
// This should be set to a fully qualified URL used to access
|
|
||||||
// your tt-rss instance over the net.
|
|
||||||
// The value should be a constant string literal. Please don't use
|
|
||||||
// PHP server variables here - you might introduce security
|
|
||||||
// issues on your install and cause hard to debug problems.
|
|
||||||
// If your tt-rss instance is behind a reverse proxy, use the external URL.
|
|
||||||
|
|
||||||
define('SINGLE_USER_MODE', false);
|
putenv('TTRSS_PLUGINS=auth_internal, note');
|
||||||
// Operate in single user mode, disables all functionality related to
|
|
||||||
// multiple users and authentication. Enabling this assumes you have
|
|
||||||
// your tt-rss directory protected by other means (e.g. http auth).
|
|
||||||
|
|
||||||
define('SIMPLE_UPDATE_MODE', false);
|
putenv('TTRSS_LOG_DESTINATION=stdout');
|
||||||
// Enables fallback update mode where tt-rss tries to update feeds in
|
|
||||||
// background while tt-rss is open in your browser.
|
|
||||||
// If you don't have a lot of feeds and don't want to or can't run
|
|
||||||
// background processes while not running tt-rss, this method is generally
|
|
||||||
// viable to keep your feeds up to date.
|
|
||||||
// Still, there are more robust (and recommended) updating methods
|
|
||||||
// available, you can read about them here: https://tt-rss.org/wiki/UpdatingFeeds
|
|
||||||
|
|
||||||
// *****************************
|
|
||||||
// *** Files and directories ***
|
|
||||||
// *****************************
|
|
||||||
|
|
||||||
define('PHP_EXECUTABLE', '/usr/bin/php');
|
|
||||||
// Path to PHP *COMMAND LINE* executable, used for various command-line tt-rss
|
|
||||||
// programs and update daemon. Do not try to use CGI binary here, it won't work.
|
|
||||||
// If you see HTTP headers being displayed while running tt-rss scripts,
|
|
||||||
// then most probably you are using the CGI binary. If you are unsure what to
|
|
||||||
// put in here, ask your hosting provider.
|
|
||||||
|
|
||||||
define('LOCK_DIRECTORY', 'lock');
|
|
||||||
// Directory for lockfiles, must be writable to the user you run
|
|
||||||
// daemon process or cronjobs under.
|
|
||||||
|
|
||||||
define('CACHE_DIR', 'cache');
|
|
||||||
// Local cache directory for RSS feed content.
|
|
||||||
|
|
||||||
define('ICONS_DIR', "feed-icons");
|
|
||||||
define('ICONS_URL', "feed-icons");
|
|
||||||
// Local and URL path to the directory, where feed favicons are stored.
|
|
||||||
// Unless you really know what you're doing, please keep those relative
|
|
||||||
// to tt-rss main directory.
|
|
||||||
|
|
||||||
// **********************
|
|
||||||
// *** Authentication ***
|
|
||||||
// **********************
|
|
||||||
|
|
||||||
// Please see PLUGINS below to configure various authentication modules.
|
|
||||||
|
|
||||||
define('AUTH_AUTO_CREATE', true);
|
|
||||||
// Allow authentication modules to auto-create users in tt-rss internal
|
|
||||||
// database when authenticated successfully.
|
|
||||||
|
|
||||||
define('AUTH_AUTO_LOGIN', true);
|
|
||||||
// Automatically login user on remote or other kind of externally supplied
|
|
||||||
// authentication, otherwise redirect to login form as normal.
|
|
||||||
// If set to true, users won't be able to set application language
|
|
||||||
// and settings profile.
|
|
||||||
|
|
||||||
// *********************
|
|
||||||
// *** Feed settings ***
|
|
||||||
// *********************
|
|
||||||
|
|
||||||
define('FORCE_ARTICLE_PURGE', 0);
|
|
||||||
// When this option is not 0, users ability to control feed purging
|
|
||||||
// intervals is disabled and all articles (which are not starred)
|
|
||||||
// older than this amount of days are purged.
|
|
||||||
|
|
||||||
// **********************************
|
|
||||||
// *** Cookies and login sessions ***
|
|
||||||
// **********************************
|
|
||||||
|
|
||||||
define('SESSION_COOKIE_LIFETIME', 86400);
|
|
||||||
// Default lifetime of a session (e.g. login) cookie. In seconds,
|
|
||||||
// 0 means cookie will be deleted when browser closes.
|
|
||||||
|
|
||||||
// *********************************
|
|
||||||
// *** Email and digest settings ***
|
|
||||||
// *********************************
|
|
||||||
|
|
||||||
// Tiny Tiny RSS sends mail via PHP mail() function, unless handled
|
|
||||||
// by a plugin.
|
|
||||||
|
|
||||||
// If you need SMTP support, take a look here:
|
|
||||||
// https://git.tt-rss.org/fox/ttrss-mailer-smtp
|
|
||||||
|
|
||||||
define('SMTP_FROM_NAME', 'Tiny Tiny RSS');
|
|
||||||
define('SMTP_FROM_ADDRESS', 'noreply@your.domain.dom');
|
|
||||||
// Name, address and subject for sending outgoing mail. This applies
|
|
||||||
// to password reset notifications, digest emails and any other mail.
|
|
||||||
|
|
||||||
define('DIGEST_SUBJECT', '[tt-rss] New headlines for last 24 hours');
|
|
||||||
// Subject line for email digests
|
|
||||||
|
|
||||||
// ***************************************
|
|
||||||
// *** Other settings (less important) ***
|
|
||||||
// ***************************************
|
|
||||||
|
|
||||||
define('CHECK_FOR_UPDATES', false);
|
|
||||||
// Check for updates automatically if running Git version
|
|
||||||
|
|
||||||
define('PLUGINS', 'auth_internal, note');
|
|
||||||
// Comma-separated list of plugins to load automatically for all users.
|
|
||||||
// System plugins have to be specified here. Please enable at least one
|
|
||||||
// authentication plugin here (auth_*).
|
|
||||||
// Users may enable other user plugins from Preferences/Plugins but may not
|
|
||||||
// disable plugins specified in this list.
|
|
||||||
// Disabling auth_internal in this list would automatically disable
|
|
||||||
// reset password link on the login form.
|
|
||||||
|
|
||||||
define('LOG_DESTINATION', 'sql');
|
|
||||||
// Error log destination to use. Possible values: sql (uses internal logging
|
|
||||||
// you can read in Preferences -> System), syslog - logs to system log.
|
|
||||||
// Setting this to blank uses PHP logging (usually to http server
|
|
||||||
// error.log).
|
|
||||||
// Note that feed updating daemons don't use this logging facility
|
|
||||||
// for normal output.
|
|
||||||
|
|
||||||
define('CONFIG_VERSION', 26);
|
|
||||||
// Expected config version. Please update this option in config.php
|
|
||||||
// if necessary (after migrating all new options from this file).
|
|
||||||
|
|
||||||
// vim:ft=php
|
|
||||||
|
|||||||
@@ -1,23 +0,0 @@
|
|||||||
#!/usr/bin/python
|
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
import signal
|
|
||||||
|
|
||||||
def write_stdout(s):
|
|
||||||
sys.stdout.write(s)
|
|
||||||
sys.stdout.flush()
|
|
||||||
|
|
||||||
def write_stderr(s):
|
|
||||||
sys.stderr.write(s)
|
|
||||||
sys.stderr.flush()
|
|
||||||
|
|
||||||
def main():
|
|
||||||
while 1:
|
|
||||||
write_stdout('READY\n')
|
|
||||||
line = sys.stdin.readline()
|
|
||||||
os.kill(1, signal.SIGTERM)
|
|
||||||
write_stdout('RESULT 2\nOK')
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
main()
|
|
||||||
import sys
|
|
||||||
@@ -29,5 +29,5 @@ stderr_logfile=/dev/stderr
|
|||||||
stderr_logfile_maxbytes=0
|
stderr_logfile_maxbytes=0
|
||||||
|
|
||||||
[eventlistener:quit_on_failure]
|
[eventlistener:quit_on_failure]
|
||||||
command=/usr/bin/python /var/lib/tt-rss-install/manage-supervisord.py
|
command=/usr/bin/php7 -r 'chdir("/var/lib/tt-rss"); while (true) { print("READY\n"); readline(); posix_kill(1, SIGTERM); print("RESULT 2\nOK"); }'
|
||||||
events=PROCESS_STATE_FATAL
|
events=PROCESS_STATE_FATAL
|
||||||
|
|||||||
Reference in New Issue
Block a user