前言

不知道大家有没有遇到这样情况,当我们看到优秀的文章时,通常喜欢把它加入书签栏。不过自从加入书签后便再也没有打开过,突然某天想要点击链接进行阅读时,发现链接早已失效。

而接下来要介绍的开源服务 Wallabag 就能解决上面的痛点,通过 Wallabag 插件可以把网页文章保存到自建的 Wallabag 服务上,当我们有空闲时间时再进行阅读,永远不必担心链接失效的问题。

项目地址

https://github.com/wallabag/wallabag

安装

Docker compose

Wallabag 默认自带 SQLite 数据库,如果单独配置数据库,那么默认的数据库不会使用。(下面的配置使用了 mariadb 和 redis 数据库)

version: '3' services: wallabag: image: wallabag/wallabag restart: unless-stopped environment: - MYSQL_ROOT_PASSWORD=wallaroot - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql - SYMFONY__ENV__DATABASE_HOST=db - SYMFONY__ENV__DATABASE_PORT=3306 - SYMFONY__ENV__DATABASE_NAME=wallabag - SYMFONY__ENV__DATABASE_USER=wallabag - SYMFONY__ENV__DATABASE_PASSWORD=wallapass - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4 - SYMFONY__ENV__DATABASE_TABLE_PREFIX="wallabag_" - SYMFONY__ENV__MAILER_DSN=smtp://127.0.0.1 - SYMFONY__ENV__FROM_EMAIL=wallabag@example.com - SYMFONY__ENV__DOMAIN_NAME=https://your-wallabag-instance.wallabag.org - SYMFONY__ENV__SERVER_NAME="Your wallabag instance" ports: - "80" volumes: - /opt/wallabag/images:/var/www/wallabag/web/assets/images healthcheck: test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost/api/info"] interval: 1m timeout: 3s depends_on: - db - redis db: image: mariadb restart: unless-stopped environment: - MYSQL_ROOT_PASSWORD=wallaroot volumes: - /opt/wallabag/data:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] interval: 20s timeout: 3s redis: image: redis:alpine restart: unless-stopped healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 20s timeout: 3s

群晖

打开群晖的【Container Manager】,搜索wallabag,选择第一个wallabag/wallabag镜像进行下载。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

在等待下载过程中,在【File Station】套件中创建wallabag文件夹,并在该文件夹中新建imagesdata分别存放图片和文件。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

设置wallabag文件夹权限为 Everyone 可读写,并勾选应用到子文件、文件夹。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

等待镜像下载完毕。运行wallabag镜像,端口设置为任意端口(8187)与容器的80端口进行映射。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

把容器中的/var/www/wallabag/web/assets/images/var/www/wallabag/data文件分别与前面新建的 images、data 文件夹进行映射。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

设置环境变量SYMFONY__ENV__DOMAIN_NAME为后面将要反代的域名(例如https://wallabag.laoning.com:12443)。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

确认配置没有问题后直接启动容器。

反向代理

打开 Nginx Proxy Manager 新增反代配置。填入域名、IP、端口。(IP为群晖的内网IP,端口为 Wallabag 服务的端口)

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

选择SSL证书。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

配置完成的URL加端口要与环境变量SYMFONY__ENV__DOMAIN_NAME设置的一致。

使用

电脑端

浏览器打开域名即可访问。(账户密码都为:wallabag)

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

右上角->config菜单中修改语言为中文。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

右上角->教程 菜单中选择安装浏览器插件。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

按要求配置插件。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

配置完成后,打开要保存的网页,点击插件就能把文章保存到 Wallabag 。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

保存到 Wallabag 的文章。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

点击文章后,可以对文章进行重新抓取、打印、导出等操作。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

手机端

下载手机APP并按照要求输入客户端ID、密钥、用户名和密码完成登录。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

APP上也能阅读保存的文章。

文章失效?链接无法访问?用它来收藏喜欢的文章吧,不再担心文章丢失!NAS部署Wallabag全指南

如果要在手机上保存文章,用浏览器打开文章链接地址后,并把当前页面分享到 Wallabag 即可。

后记

试了群晖自带的 MariaDB 和以前搭建好的 MySQL 数据库来存储 Wallabag 的数据,发现环境变量SYMFONY__ENV__DATABASE_HOST为IP地址的时候都无法成功,个人猜测应该只能使用用 docker-compose 配置文件中定义的数据库容器名称。

我是老宁

一个热爱技术的程序员和极客,群晖NAS深度玩家!

专注NAS相关技术分享,原创!干货!

觉得老宁的文章对你有帮助,记得点赞、收藏、加关注

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

,

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。