Commit Graph

91 Commits

Author SHA1 Message Date
Alexandre Alapetite
23158b83cd Alpine 3.14 (#3715)
https://alpinelinux.org/posts/Alpine-3.14.0-released.html
* Apache updated to Apache/2.4.48 (from 2.4.46) https://downloads.apache.org/httpd/CHANGES_2.4.48
* PHP updated to PHP 8.0.8 (from 8.0.2) https://www.php.net/ChangeLog-8.php#8.0.8
2021-07-24 22:17:44 +02:00
Alexandre Alapetite
483b6eb333 Drop PHP5 and IE11 (#3666)
* Drop PHP5 and IE11
https://github.com/FreshRSS/FreshRSS/discussions/3321
Our Docker :oldest is now based on Alpine 3.5 (2016-12-22)

* More uniform

* More changelog
2021-06-07 17:53:47 +02:00
Alexandre Alapetite
1c3159058f Quick update the doc for master renaming to edge 2021-03-15 00:00:25 +01:00
Alexandre Alapetite
27c4194c8e Disable built-in update when using Docker (#3496)
#fix https://github.com/FreshRSS/FreshRSS/issues/3495
2021-03-04 21:18:34 +01:00
Alexandre Alapetite
0d69175875 Alpine oldest: php5-openssl (#3482)
alpine:3.13 require php5-openssl for some https features.

Otherwise, fail on e.g. the extension page:

```
file_get_contents(): php Unable to find the wrapper "https" - did you
forget to enable it when you configured PHP? in
/var/www/FreshRSS/app/Controllers/extensionController.php on line 45

PHP Warning:
file_get_contents(https://raw.githubusercontent.com/FreshRSS/Extensions/master/extensions.json):
failed to open stream: No such file or directory in
/var/www/FreshRSS/app/Controllers/extensionController.php on line 45

[error] --- Could not fetch available extension from GitHub
```

Does not seem required for newer Alpine versions using PHP7 / PHP8
2021-02-27 11:22:06 +01:00
Creak
13688825f2 Fix nginx config (#3438)
* Fix nginx config

* Remove `proxy_cookie_path`
* Add `proxy_set_header X-Forwarded-Prefix` for the subdirectory config
* Add nginx config when hosted as domain root

* Add `/` at the end of `proxy_pass`
2021-02-11 17:45:11 +01:00
Alexandre Alapetite
bf639f9b98 Docker: Alpine 3.13 with PHP 8 (#3375)
* Docker: Alppine 3.13 with PHP 8

PHP 8.0.1, Apache 2.4.46
Bug https://bugs.php.net/bug.php?id=78681 fixed in Alpine, so workaround
removed from our Dockefile(s)
Supports MySQL 8+
#fix https://github.com/FreshRSS/FreshRSS/issues/3191

* Changelog

* Update CHANGELOG.md

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2021-01-16 19:39:15 +01:00
Alexandre Alapetite
8dfe209799 Possiblity to autoinstall in Docker Compose (#3353)
* Possiblity to autoinstall in Docker Compose

#fix https://github.com/FreshRSS/FreshRSS/issues/3349

It is simply calling our existing CLI: do-install.php and
create-user.php
https://github.com/FreshRSS/FreshRSS/tree/master/cli

FreshRSS will typically be ready a few seconds before the database, so
introduce a tolerance when the database is not available / up (yet) by
trying a few times to connect. Also useful to avoid service interruption
when DB service is restarted.

Example:

```yml
freshrss-app:
    image: freshrss/freshrss
    container_name:
freshrss-app
    hostname: freshrss-app
    restart: unless-stopped

ports:
      - "8080:80"
    depends_on:
      - freshrss-db

volumes:
      - data:/var/www/FreshRSS/data
      -
extensions:/var/www/FreshRSS/extensions
    environment:
      CRON_MIN:
'*/20'
      FRESHRSS_ENV: development
      FRESHRSS_INSTALL: |-

--api_enabled
        --base_url https://rss.example.net

--db-base freshrss
        --db-host freshrss-db
        --db-password
freshrss
        --db-type pgsql
        --db-user freshrss

--default_user admin
        --language en
      FRESHRSS_USER: |-

--api_password freshrss
        --email user@example.net

--language en
        --password freshrss
        --user admin
      TZ:
Europe/Paris
```

* Minor type f in find

* shellcheck
2021-01-11 22:36:50 +01:00
Alexandre Alapetite
69060cda33 Docker: Environment variable to change Apache port (#3343)
#fix https://github.com/FreshRSS/FreshRSS/issues/3341

New environment variable `LISTEN='0.0.0.0:8080'`

```
docker run -d --network host --uts host -e LISTEN='0.0.0.0:8080' -e
TZ=Europe/Paris --name freshrss   freshrss/freshrss
```
2021-01-07 23:32:39 +01:00
Alexandre Alapetite
85f5dd4bef Docker new :newest image (#3294)
* Docker new :Edge image

New optional Docker image to test upcoming software versions, using
Alpine:Edge
Similar than https://github.com/FreshRSS/FreshRSS/pull/3274 (oldest
image) but for newest.
Usefull for e.g. testing PHP8
https://github.com/FreshRSS/FreshRSS/issues/3082 , MySQL 8
https://github.com/FreshRSS/FreshRSS/issues/3191

* Syntax if symlink already exists in future edge

* Rename to newest

Better match our "Oldest" version, and to avoid conflicts with the
potential renaming of our master branch

* Update Docker/Dockerfile-Newest

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2020-12-30 15:42:32 +01:00
Alexandre Alapetite
da4121cb6c Docker image for oldest supported PHP version (#3274)
Add a Docker file, which can be used to test FreshRSS with our oldest
supported PHP version.

See
https://pkgs.alpinelinux.org/packages?name=php5&branch=v3.4&arch=x86_64

PHP 5.6.36-r0
2020-12-12 15:59:06 +01:00
Alexandre Alapetite
e0b80e82e2 Docker LogFormat Alpine (#3235)
#fix https://github.com/FreshRSS/FreshRSS/issues/3233
In Alpine, we need to enable mod_logio.c to use %O. Revert to more
standard %b
https://httpd.apache.org/docs/2.4/mod/mod_log_config.html#logformat
2020-10-22 00:04:10 +02:00
Alexandre Alapetite
9ab05c7f67 Docker: Use Apache remoteip (#3226)
#fix https://github.com/FreshRSS/FreshRSS/issues/3224
Log the client remote IP instead of the local proxy IP
https://httpd.apache.org/docs/2.4/mod/mod_remoteip.html
2020-10-16 09:25:43 +02:00
Jucgshu
5eef40162c Remove Docker heathchecks (#3161)
* Update Dockerfile

Remove heathcheck

* Update Dockerfile-Alpine

Remove heathcheck

* Update Dockerfile-QEMU-ARM

Remove heathcheck
2020-08-30 10:10:49 +02:00
Alexandre Alapetite
cb07b13059 More changelog, Docker readme
https://github.com/FreshRSS/FreshRSS/pull/3159
2020-08-29 23:02:45 +02:00
Alexandre Alapetite
b6b6a6de1d Docker use Debian instead of Ubuntu (#3159)
#fix https://github.com/FreshRSS/FreshRSS/issues/3026
Ubuntu 19.10 has expired.
I still cannot get Ubuntu 20.04 to work on ARM (Raspberry Pi) https://github.com/FreshRSS/FreshRSS/pull/2943
Move to Debian 10 Buster instead of our current Ubuntu 19.10 (which was based on Debian 10 Buster).
2020-08-29 15:54:58 +02:00
Germs2004
20d0f9cd76 volume names include redundant prefix (#3108)
This proposed change includes tweaks to the names of the services and volumes, and adds an explicit label to the postgres and freshrss containers.

Using a more generic "freshrss-db" instead of "freshrss_postgresql" seems more standard among other docker projects and makes it a bit easier to switch databases later.

Removing the "freshrss_" prefix from the volume names solves a problem where the docker-compose automatically prepends a "project name" to volume names upon running "up".  So if your docker-compose.yml file is stored in a folder named "freshrss", you would end up with a redundant volume name of "freshrss_freshrss_data".

This also adds a restart policy to the db container.
2020-08-29 12:16:03 +02:00
Alexandre Alapetite
0085b5e0c1 Docker Alpine 3.12 (#3025)
https://alpinelinux.org/posts/Alpine-3.12.0-released.html
With PHP 7.3.18 (from 7.3.17) (and Apache 2.4.43 unchanged).
No other significant change spotted
2020-06-01 13:13:12 +02:00
Marien Fressinaud
97881628eb tec: Add a make lint command in the Makefile (#2996) 2020-05-25 19:06:23 +02:00
Mike Vanbuskirk
65b55d2d58 fixes #2931 (#2970) 2020-05-14 08:39:09 +02:00
Alexandre Alapetite
df9c0ae6f1 Fix Docker FRESHRSS_ENV for cron (#2963)
cron job was not passed the environment variable FRESHRSS_ENV as it
should
This resulted in messages during cron to not be logged according to
FRESHRSS_ENV level
2020-05-12 22:47:13 +02:00
pofilo
ee29ec0a73 Fix tty error on cron with docker (#2954)
* Fix tty error on cron with docker

* remove interactive option in cron command
2020-05-06 22:56:51 +02:00
Alexandre Alapetite
af575e061d Revert to Ubuntu 19.10 (#2943)
* Revert to Ubuntu 19.10

#Fix https://github.com/FreshRSS/FreshRSS/issues/2939
Revert https://github.com/FreshRSS/FreshRSS/pull/2925

Will upgrade back to 20.04 when Ubuntu bugs are fixed, e.g.
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1867675

* Revert changelog
2020-05-02 18:24:13 +02:00
Alexandre Alapetite
0f7970b4c0 Docker: Ubuntu 20.04 (#2925)
https://ubuntu.com/blog/ubuntu-20-04-lts-arrives
PHP 7.4.3, Apache 2.4.41
https://php.net/migration74
We have already addressed PHP 7.4 issues in FreshRSS 1.16
2020-04-25 12:27:25 +02:00
Frans de Jonge
5fbbc6ad58 Fix minor typo in Docker README (#2921) 2020-04-21 21:17:29 +02:00
Twilek-de
bb3c35401c #2671 Apache reverse proxy (#2919)
* #2671 Apache reverse proxy

Adding sample configuration for using apache as a reverse proxy

* Update Docker/README.md

Better wording

Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>

* Update Docker/README.md

Better wording

Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>

* Included suggestions and cleaned up code

I have cleaned the code with the <location> Tags so that it is more concise

* Included corrections

* Update Docker/README.md

Minor port number

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-04-21 20:11:34 +02:00
Alexandre Alapetite
cdbf401cca More gitignore and dockerignore (#2844)
Add to gitignore and dockerignore some additional files created by the
different tests we have
2020-03-24 15:31:14 +01:00
Alexandre Alapetite
cd49e9819b New core-extensions to allow Docker volumes for third-party extensions (#2837)
* New core-extensions to allow Docker volumes for third-party extensions

#Fix https://github.com/FreshRSS/FreshRSS/issues/2650
Split our extensions directory into two:
1) Core extensions shipped with FreshRSS in ./lib/core-extensions/
2) Third-party extensions modified by end-users in ./extensions/ which
can easily be mounted as a Docker volume

* Example of Docker Compose with extensions

* Back-compatibility + fix array merge bug
2020-03-22 16:31:20 +01:00
Marien Fressinaud
6bc963569b tec: Add a test target to Makefile (#2725)
* tec: Add a test target to Makefile

Minor edit put php7-phar on third line

I try to keep on the third line the Alpine-specific PHP extensions (i.e.
that are not by default in Ubuntu), and in alphabetic order

Co-Authored-By: Alexandre Alapetite <alexandre@alapetite.fr>

* Allow to run make test without Docker
2019-12-29 13:55:45 +01:00
Alexandre Alapetite
ef062803ee Docker: Alpine Linux 3.11 (#2729)
https://alpinelinux.org/posts/Alpine-3.11.0-released.html
Apache/2.4.41 (unchanged), PHP 7.3.13 (updated from 7.3.11 when Alpine
3.10 was released, but unchanged since the latest build of 3.10)
2019-12-23 16:47:58 +01:00
Alexandre Alapetite
22030155f8 Fix database autocreate at install (#2635)
* Fix database autocreate at install

Several bugs prevented the auto-creation of the database in Web and CLI
installs.
Fix
https://github.com/YunoHost-Apps/freshrss_ynh/issues/84#issuecomment-549818408

* initDb

https://github.com/FreshRSS/FreshRSS/pull/2635#discussion_r343107795
2019-11-06 15:16:00 +01:00
Alexandre Alapetite
8b0f9fae9f Cookie same-site (#2630)
* Set-Cookie SameSite

* https://tools.ietf.org/html/draft-ietf-httpbis-cookie-same-site-00
* https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis-02#section-5.3.7
* https://blog.mozilla.org/security/2018/04/24/same-site-cookies-in-firefox-60/
* https://blog.chromium.org/2019/10/developers-get-ready-for-new.html

Set to Lax instead of Strict to allow linking to allow linking to FreshRSS sub-pages without having to log-in again
2019-11-05 18:11:38 +01:00
Alexandre Alapetite
3c49986ec8 New environment variable COPY_LOG_TO_SYSLOG (#2591)
* New environment variable COPY_LOG_TO_SYSLOG

False by default.
Makes it easy to monitor all logs from Syslog or STDERR (e.g. docker
logs).

* Suggestion of native constants
2019-10-26 11:19:42 +02:00
Alexandre Alapetite
bc820a151a Docker update to Ubuntu 19.10 (#2577)
Released today with PHP 7.3.8, Apache 2.4.41
http://releases.ubuntu.com/eoan/
2019-10-19 02:39:18 +02:00
Pim Snel
fb3bcc45f3 #2573 remove trailing slash to prevent normalizing by nginx (#2574) 2019-10-17 00:05:04 +02:00
Alexandre Alapetite
077e3cff45 Increase import size (#2563)
* Increase import size

This is merely a temporary workaround to allow at least some medium size
imports
https://framateam.org/freshrss/pl/7wbt4tcyetrfmris9xdcbq7uuw
The import module should be rewritten to process files one by one and as
data streams instead of loading multiple copies of the whole dataset in
memory as is the case now :-(
https://github.com/FreshRSS/FreshRSS/issues/1890
Note that the new SQLite export/import is distinct from this case.

* Use parameter
2019-10-08 20:52:03 +02:00
Alexandre Alapetite
0d5c80b698 Example Docker Compose v3 (#2553)
Fix https://github.com/FreshRSS/FreshRSS/issues/2547
2019-10-05 15:48:38 +02:00
Alexandre Alapetite
37b52b7361 Trim whitespace (#2544) 2019-10-01 18:12:21 +02:00
Alexandre Alapetite
891e8ef782 Explicit Traefik 1.7 (#2533)
Traefik 2.0 has some breaking changes.
Making the use of version 1.7 explicit while waiting for upgrading to 2.0
https://community.containo.us/t/traefik-release-v2-0-0/1628
2019-09-25 07:51:10 +02:00
Alexandre Alapetite
6cedeeeae5 Minz: New environment variable to control development mode (#2508)
* New environment variable to control development mode

Suggestion of new enviromnent variable, as discussed
https://github.com/FreshRSS/FreshRSS/pull/2492#issuecomment-523613920

* Update Docker/README.md

Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>

* Update Docker/README.md

Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>

* Update Docker/README.md

Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>

* Declare ENV in Dockerfile

Tested
2019-08-22 20:04:26 +02:00
Alexandre Alapetite
d09826c145 Docker Alpine opcache (#2498)
https://github.com/FreshRSS/FreshRSS/pull/2495#discussion_r315662184
https://php.net/ref.opcache
We need to retest the performances
https://github.com/FreshRSS/FreshRSS/pull/2205
2019-08-20 15:48:54 +02:00
Alexandre Alapetite
38a4b22f7b Doc MariaDB (#2494) 2019-08-17 13:07:30 +02:00
Sandro
544fcc4500 Docker readme cleanups (#2483)
* Don't manually pull the base image

* Remove sudo before each docker

cause the user is usually added to the docker group

If not you can read it up here:
https://docs.docker.com/install/linux/linux-postinstall/

* Simplify cd
2019-08-16 08:18:34 +02:00
Sandro Jäckel
4e0acf5296 Ignore JSON notation 2019-07-23 08:49:41 +02:00
Frans de Jonge
ad92518fe4 [CI] Run shellcheck and shfmt (#2454)
* [CI] Run shellcheck and shfmt

Cf. https://github.com/FreshRSS/FreshRSS/pull/2436#discussion_r305640019

* rename

* no need for disable anymore

* also remove leftover indentation flags even if it makes no difference to syntax checking

* define colors and reset before exit for local use
2019-07-22 16:07:40 +02:00
Sandro Jäckel
71270e4d5c Replace curl healthcheck with pure php, apply haodlint suggestions (#2455)
Closes #2453
2019-07-22 15:26:55 +02:00
Alexandre Alapetite
0a297addc0 Add php-gmp for API in Ubuntu 32-bit (#2450)
And adjust slightly the HEALTHCHECK parameters for faster start in
Træfik
2019-07-21 12:49:29 +02:00
Alexandre Alapetite
a394d7ab10 Docker Hub readme (#2441)
* Docker Hub readme

Try to use anothe readme.
And update info for
https://alpinelinux.org/posts/Alpine-3.10.1-released.html

* Test another variant

* /tmp/ did not work
2019-07-13 15:19:39 +02:00
Alexandre Alapetite
93bef33e1f Fix ARM ca-certs (#2440)
Workaround strange bug: When building on Docker Hub with QEMU, the
symlinks for the CA certificates are not created properly, although it
is the case when building for ARM locally.
Manually calling `update-ca-certificates -f` fixes the problem.
Note for later: Maybe we should call this update in our entrypoint.sh.
2019-07-08 15:17:31 +02:00
Alexandre Alapetite
af8b39a204 Changelog, credits
https://github.com/FreshRSS/FreshRSS/issues/2429
https://github.com/FreshRSS/FreshRSS/pull/2431
https://github.com/FreshRSS/FreshRSS/issues/2437
https://github.com/FreshRSS/FreshRSS/pull/2439
2019-07-08 13:10:51 +02:00