基于 wallabag 和腾讯云轻量服务器搭建 read it later 服务
Table of Contents
能跑
最近 Mozilla 要放弃 Pocket 了,所以暂时没有顺手的 read it later 服务用了,既然在线的服务都差点意思,开会员也挺贵的,不如自己搭建一个自托管的开源方案,用着反而更舒服、放心。看到网上都在推荐 wallabag 这款,加上 emacs 插件生态的支持也不错,决定自己部署一下试试。
说干就干,调研了一些目前的云服务器价格,发现腾讯云有一款 68 元一年的 2 核 2 G 的轻量级服务器 (https://curl.qcloud.com/ORNFjYjP) 价格还不错,重点是不需要新用户就可以买。
参照 wallabag 的安装文档 (https://doc.wallabag.org/admin/installation/installation/),我选择使用 docker 安装该服务。但是尝试了多次
docker pull wallabag/wallabag
一直超时,作为云服务器,真是有点离谱了。不过腾讯云也提供了解决方案,就是换成他们自己的源 (https://cloud.tencent.com/document/product/1207/45596),简单来讲就是新建一个 =/etc/docker/daemon.json= 后加入
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com"
]
}
并重启 docker 服务即可。
sudo systemctl restart docker
之后就能够顺利的一条命令快速把 wallabag 服务拉下来了。
docker pull wallabag/wallabag
其实后来觉得有点冲动了,实际上找到第三方托管一下 web 应用省事又省钱。不过既然买了,就好好折腾折腾,后面可以再搭建点别的服务。
配置
简单起见,我们使用 sqlite 来持久化存储数据,参考 dockerhub 上的指令,我们运行服务:
docker run -d -v /opt/wallabag/data:/var/www/wallabag/data -v /opt/wallabag/images:/var/www/wallabag/web/assets/images -p 80:80 -e "SYMFONY__ENV__DOMAIN_NAME=http://locahost" wallabag/wallabag
根据服务器的 ip 和想要映射的端口进行自定义的修改即可。
随后,进入 container 中进行配置,主要没开放注册,所以需要添加一下账户:
docker exec -it CONTAINER_NAME /bin/sh
进入 container 的环境后,首先安装依赖,随后使用 fos:user:create 并根据指引创建用户即可。
composer install
fos:user:create
最后打开 http://your_ip 即可得到如下页面,使用上述设置好的 username 和 passwd 登录即可。
使用
- 登录后首页有快速开始的指引;
- 在 firefox 上安装 Wallabagger 插件,并根据指引创建 client, 填写 client id 和 client key 即可;
- 支持从 Pocket, Omnivore 等平台导入;
- 手机 app: 从 play store 即可获取,支持扫描二维码导入配置,但是我点击的时候一直打开我的北京一卡通 app,只能手填了,不过只需要 url, username 和 passwd 即可,客户端会自己获取对应的 id 和 key。
这样就愉快的使用了,后续再慢慢完善吧,比如替换 https 等。