GithubHelp home page GithubHelp logo

rach-sharp / freedbin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from feedbin/feedbin

72.0 7.0 5.0 18.33 MB

Self-Hosted RSS Reader

Home Page: https://www.rachsharp.co.uk/dockerizing-feedbin/

License: MIT License

Ruby 52.25% CoffeeScript 9.76% JavaScript 0.06% CSS 18.67% HTML 19.17% Dockerfile 0.06% Shell 0.02%

freedbin's Introduction

Freedbin 🍔

Feedbin is a simple, fast and nice looking RSS reader - this fork provides a version intended for users who want to host their own copy of it for free, that can be run anywhere with Docker.

Requirements

  • Docker
  • docker-compose

Installation

  • wget https://raw.githubusercontent.com/rach-sharp/freedbin/master/docker-compose.yml
  • Set config values in the docker-compose.yml file
  • docker-compose up
  • Access the app from localhost:9292 (first request can take a little while)

All the minimum necessary config parameters required for it to run are set in the Dockerfile. All the config parameters required for interconnectivity with the db etc, are specified in the docker compose file.

The container images are hosted on dockerhub:

Differences to the original

Batteries Included

  • Will work without a payment system like stripe
  • Doesn't require HTTPS to be enabled (for if you are using at home, or from behind a reverse proxy)
  • API is served from the main domain rather than an API subdomain.
  • Use open source fonts

Optional Extras

  • When ANALYTICS_GTAG environment variable is set, Google Analytics will be enabled

Contributing

Feel free to file PRs for features or fixes you think are specifically useful to the self-hosted version, but if it's generally applicable then contribute to the original Feedbin project which will be merged into this fork periodically.

Roadmap

  • Restricting signups to be admin-managed.
  • Adding Helm Chart for Kubernetes deployment

freedbin's People

Contributors

benubois avatar biow0lf avatar bkero avatar brendanlong avatar cp avatar dlackty avatar fabrik42 avatar fnkr avatar gabmartini avatar gregmolnar avatar heitortsergent avatar janlo avatar jmazzi avatar julien51 avatar kirs avatar kossnocorp avatar maxjacobson avatar meyer avatar nanaya avatar porada avatar pronix avatar rach-sharp avatar ryon avatar scutifer avatar tp avatar tsfoster avatar zegnat 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  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

freedbin's Issues

Mercury API direct access

Hi,

Now that mercury is dead open sourced, I have a local version of it running in docker, using this docker image.

I'm wondering if it's possible to just point to it instead of the API key.

Could you (pr someone else reading this) provide some guidance on this?

Also, thanks so much for dockerizing feedbin! I've been using tt-rss in docker and it IS old! 😛

Want to replace it with something new and fun...

Favicons for feeds don't work without an S3 Bucket

Favicons for feeds are stored in an S3 bucket at the moment. Worth looking into possible ways to decouple from S3, maybe with a container that can act as S3 if that exists, or by storing the favicons for feeds in some other way?

Constantly crashes in the first setup

Operating System: Synology DSM 6.2.1-23824 Update 6
Docker Version: 17.05.0-ce (DSM version)

After setting up the docker file, I ran the container but crashed after 10 seconds. Seems like the PostgreSQL is malfunctioning. Log is attached as an output from the Docker (HTML version)

feedbin.zip

S3 error when importing OPML

When trying to import an OPML (exported from Feedly) via Options→Import & Export→Import, I get this error from S3. Needless to say I didn't configure any S3 as I want to self-host.

<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>InvalidBucketName</Code><Message>The specified bucket is not valid.</Message><BucketName></BucketName><RequestId>58F084F5775C490D</RequestId><HostId>3h5HwbPkU5Yof/Sjf5NxdLWYShbRZnEkYwsILkeggYF2FE4LL9Us/Af/pxdbR71wTiQEy5sALt4=</HostId></Error>

Batteries-Included Camo also needs to be public

Camo Proxy doesn't work how I was thinking, needs to be public to be usable. Upstream feedbin change probably means that local camo proxy that the server can access but not the client is revealing the issue.

Workarounds:

  • Unset CAMO_HOST and CAMO_KEY if running on localhost, no image proxy needed unless enabling HTTPS
  • Use Heroku to host, as described by ananke/camo

So actual fix would be:

  • remove camo from this version
  • keep camo in and make it publicly accessible from a separate port

Refresher Stop Refreshing

Is there any refreshing rate config?

My Refresher was working but dosen't work anymore?

What could be the problem ?

Part of refresher logs.

refresher_1      | 18:42:47 worker.1 | W, [2019-09-03T18:42:47.797250 #9]  WARN -- Feedjira: Failed to parse date "Invalid Date"
refresher_1      | 18:42:47 worker.1 | W, [2019-09-03T18:42:47.797293 #9]  WARN -- Feedjira: invalid date (ArgumentError)
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/bundler/gems/feedjira-a8a90bbc601f/lib/feedjira/feed_entry_utilities.rb:13:in `parse'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/bundler/gems/feedjira-a8a90bbc601f/lib/feedjira/feed_entry_utilities.rb:13:in `parse_datetime'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/bundler/gems/feedjira-a8a90bbc601f/lib/feedjira/feed_entry_utilities.rb:30:in `published='
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sax-machine-1.3.2/lib/sax-machine/handlers/sax_abstract_handler.rb:111:in `_end_element'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/nokogiri-1.8.5/lib/nokogiri/xml/sax/document.rb:127:in `end_element_namespace'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/nokogiri-1.8.5/lib/nokogiri/xml/sax/parser.rb:110:in `parse_with'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/nokogiri-1.8.5/lib/nokogiri/xml/sax/parser.rb:110:in `parse_memory'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/nokogiri-1.8.5/lib/nokogiri/xml/sax/parser.rb:83:in `parse'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sax-machine-1.3.2/lib/sax-machine/handlers/sax_nokogiri_handler.rb:10:in `sax_parse'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sax-machine-1.3.2/lib/sax-machine/sax_document.rb:11:in `parse'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sax-machine-1.3.2/lib/sax-machine/sax_document.rb:39:in `parse'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/bundler/gems/feedjira-a8a90bbc601f/lib/feedjira/feed_utilities.rb:18:in `parse'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/bundler/gems/feedkit-af9150a1a754/lib/feedkit/parser/xml_feed.rb:7:in `feed'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/bundler/gems/feedkit-af9150a1a754/lib/feedkit/parser/xml_feed.rb:58:in `entries'
refresher_1      | 18:42:47 worker.1 | /usr/src/app/models/fetched.rb:19:in `entries'
refresher_1      | 18:42:47 worker.1 | /usr/src/app/workers/feed_refresher_fetcher.rb:13:in `perform'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:185:in `execute_job'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:167:in `block (2 levels) in process'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/middleware/chain.rb:128:in `block in invoke'
refresher_1      | 18:42:47 worker.1 | /usr/src/lib/worker_stat.rb:6:in `block in call'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/librato-rack-2.0.4/lib/librato/collector/aggregator.rb:83:in `measure'
refresher_1      | 18:42:47 worker.1 | /usr/src/lib/worker_stat.rb:5:in `call'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/middleware/chain.rb:130:in `block in invoke'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/middleware/chain.rb:133:in `invoke'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:166:in `block in process'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:137:in `block (6 levels) in dispatch'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/job_retry.rb:98:in `local'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq.rb:36:in `block in <module:Sidekiq>'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:243:in `stats'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/job_logger.rb:8:in `call'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/job_retry.rb:73:in `global'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/processor.rb:125:in `block in dispatch'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/logging.rb:48:in `with_context'
refresher_1      | 18:42:47 worker.1 | /usr/local/bundle/gems/sidekiq-5.2.2/lib/sidekiq/logging.rb:42:in `with_job_hash_context'

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.