一个简单|快速|漂亮的RSS阅读器|Feedbin安装教程

cera cera

前几天应几位童鞋的要求,研究了下Feedbin,一个简单,快速,漂亮的RSS阅读器,功能挺强的,具体介绍可以看官网→传送门,由于网上几乎看不到这个的安装教程,官方安装文档也少,导致中间踩得坑也挺多的,所以这里就大概发个安装教程,有兴趣的可以试试。

截图

安装

Github地址:https://github.com/feedbin/feedbin

环境要求:Ruby 2.3.1Postgres 10Redis > 2.8MemcachedElasticsearch 2.4.X

教程只适用于CentOS 7系统,内存建议1G;如果你是KVM,且内存不够的话,建议加点SwapSwap添加脚本

1、安装依赖

#更新系统
yum update -y
#安装EPEL
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
#安装开发工具组包
yum -y groupinstall "Development Tools"
#安装依赖
yum install libcurl-devel libxml2-devel libxslt-devel rubygems ruby-devel rubygem-bundler ImageMagick-devel patch libidn-devel libidn2-devel libidn2 tmux postgresql-devel java-1.8.0-openjdk.x86_64 -y

2、安装ElasticSearch

rpm -Uvh https://www.moerats.com/usr/down/elasticsearch-2.4.4.rpm

3、安装Memcached

yum install memcached -y

4、安装Redis

yum install redis -y

5、安装PostgreSQL 10

#安装存储库RPM
yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm -y
#安装数据库和一些服务包
yum install postgresql10 postgresql10-server postgresql10-contrib -y
#初始化数据库
/usr/pgsql-10/bin/postgresql-10-setup initdb

6、开始运行

#运行命令
systemctl start memcached redis elasticsearch postgresql-10
#查看状态,如果都显示active(running)即为运行成功
systemctl status memcached redis elasticsearch postgresql-10
#设置开机自启
systemctl enable memcached redis elasticsearch postgresql-10

7、安装Ruby

#安装RVM
curl -sSL https://get.rvm.io | bash -s stable
#如果安装RVM失败,运行以下一行命令后再重新安装
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
#使其生效
source /etc/profile.d/rvm.sh
#安装ruby 2.5.0
rvm install ruby 2.5.0
#设为默认值
rvm use 2.5.0 --default

8、配置数据库
编辑文件:

nano /var/lib/pgsql/10/data/pg_hba.conf

将以下2行后面的peer改成trust,再使用Ctrl+xy保存退出。

再重启数据库:

systemctl restart postgresql-10

9、打包程序

#拉取源码
git clone https://github.com/feedbin/feedbin.git
cd feedbin
mv .env.example .env
#安装依赖
gem install bundle curb nokogiri nio4r bcrypt ffi http_parser.rb idn-ruby unf_ext kgio sassc websocket-driver msgpack mini_racer puma raindrops rmagick
#运行命令
bundle

如果过程中出现错误,根据提示安装所需依赖就行了,比如gem install sassc。安装好了后再执行bundle命令。直到安装完成。

10、相关配置
编辑feedbin目录里的.env文件,进行以下修改:

#你也可以根据要求开启其它功能
export DATABASE_URL=postgres://postgres:password@127.0.0.1/database
export REDIS_URL=redis://127.0.0.1:6379
export ELASTICSEARCH_URL=http://127.0.0.1:9200
export SECRET_KEY_BASE=<%= ENV["SECRET_KEY_BASE"] %>

再去申请一个Stripe.api_key,申请地址→传送门,建立一个名为trial的测试密匙,再到.env文件里设置STRIPE_API_KEYSTRIPE_PUBLIC_KEY

如果不申请和设置Stripe.api_key的话,注册账号时会验证失败,不过这里博主想到了一个不用注册就可以使用的方法。就是编辑app/models/user.rb文件,进行如下编辑:

#注销掉下面一行代码,大概位置70行左右
#before_create { create_customer }

再编辑config/database.yml文件。

#修改数据库用户名,不然会默认root
username: postgres

11、运行程序
以下命令均在feedbin文件夹运行。

设置数据库:

rake db:setup

启动流程:

#后台运行
screen -S start
bundle exec foreman start

接下来按Ctrl+A,再按D键保存退出。

继续后台运行命令:

screen -S rackup
rackup

同样的安装上面方法保存退出。

最后可以关下防火墙,运行命令:

systemctl stop firewalld.service    #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

12、域名反代
这里请提前解析好域名,默认开启SSL

安装Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager
#备用地址
wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager

编辑配置文件

#以下全部内容是一个整体,修改域名后一起复制到SSH运行!
echo "https://xx.com {
 tls admin@moerats.com
 proxy / localhost:9292 {
    header_upstream Host {host}
    header_upstream X-Real-IP {remote}
    header_upstream X-Forwarded-For {remote}
    header_upstream X-Forwarded-Proto {scheme}
  }
 log /var/log/caddy.log
 gzip
}" > /usr/local/caddy/Caddyfile

tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可。后面为ssl证书路径。

启动Caddy

/etc/init.d/caddy start

最后就可以通过域名https访问了。

13、插件设置
插件也不是必须安装的,不过这里就列举几个插件,照着Github安装后,在.env文件里进行配置后,再重新启动即可。

刷新插件:https://github.com/feedbin/refresher
图像查找:https://github.com/feedbin/image
图像代理:https://github.com/atmos/camo

最后有兴趣的可以自己慢慢研究,至于有人要Docker教程,由于网上制作镜像的人很少,而且版本都很老了,就不发了,如果需求的人多,博主就抽空做个,不然就算了。

cera cloudiplc tengxunyun

相关推荐