前言

不知道大家有沒有遇到這樣情況,當(dāng)我們看到優(yōu)秀的文章時,通常喜歡把它加入書簽欄。不過自從加入書簽后便再也沒有打開過,突然某天想要點擊鏈接進行閱讀時,發(fā)現(xiàn)鏈接早已失效。

而接下來要介紹的開源服務(wù) Wallabag 就能解決上面的痛點,通過 Wallabag 插件可以把網(wǎng)頁文章保存到自建的 Wallabag 服務(wù)上,當(dāng)我們有空閑時間時再進行閱讀,永遠(yuǎn)不必?fù)?dān)心鏈接失效的問題。

項目地址

https://github.com/wallabag/wallabag

安裝

Docker compose

Wallabag 默認(rèn)自帶 SQLite 數(shù)據(jù)庫,如果單獨配置數(shù)據(jù)庫,那么默認(rèn)的數(shù)據(jù)庫不會使用。(下面的配置使用了 mariadb 和 redis 數(shù)據(jù)庫)

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鏡像進行下載。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

在等待下載過程中,在【File Station】套件中創(chuàng)建wallabag文件夾,并在該文件夾中新建imagesdata分別存放圖片和文件。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

設(shè)置wallabag文件夾權(quán)限為 Everyone 可讀寫,并勾選應(yīng)用到子文件、文件夾。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

等待鏡像下載完畢。運行wallabag鏡像,端口設(shè)置為任意端口(8187)與容器的80端口進行映射。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

把容器中的/var/www/wallabag/web/assets/images、/var/www/wallabag/data文件分別與前面新建的 images、data 文件夾進行映射。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

設(shè)置環(huán)境變量SYMFONY__ENV__DOMAIN_NAME為后面將要反代的域名(例如https://wallabag.laoning.com:12443)。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

確認(rèn)配置沒有問題后直接啟動容器。

反向代理

打開 Nginx Proxy Manager 新增反代配置。填入域名、IP、端口。(IP為群暉的內(nèi)網(wǎng)IP,端口為 Wallabag 服務(wù)的端口)

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

選擇SSL證書。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

配置完成的URL加端口要與環(huán)境變量SYMFONY__ENV__DOMAIN_NAME設(shè)置的一致。

使用

電腦端

瀏覽器打開域名即可訪問。(賬戶密碼都為:wallabag)

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

右上角->config菜單中修改語言為中文。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

右上角->教程 菜單中選擇安裝瀏覽器插件。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

按要求配置插件。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

配置完成后,打開要保存的網(wǎng)頁,點擊插件就能把文章保存到 Wallabag 。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

保存到 Wallabag 的文章。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

點擊文章后,可以對文章進行重新抓取、打印、導(dǎo)出等操作。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

手機端

下載手機APP并按照要求輸入客戶端ID、密鑰、用戶名和密碼完成登錄。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

APP上也能閱讀保存的文章。

文章失效?鏈接無法訪問?用它來收藏喜歡的文章吧,不再擔(dān)心文章丟失!NAS部署Wallabag全指南

如果要在手機上保存文章,用瀏覽器打開文章鏈接地址后,并把當(dāng)前頁面分享到 Wallabag 即可。

后記

試了群暉自帶的 MariaDB 和以前搭建好的 MySQL 數(shù)據(jù)庫來存儲 Wallabag 的數(shù)據(jù),發(fā)現(xiàn)環(huán)境變量SYMFONY__ENV__DATABASE_HOST為IP地址的時候都無法成功,個人猜測應(yīng)該只能使用用 docker-compose 配置文件中定義的數(shù)據(jù)庫容器名稱。

我是老寧

一個熱愛技術(shù)的程序員和極客,群暉NAS深度玩家!

專注NAS相關(guān)技術(shù)分享,原創(chuàng)!干貨!

覺得老寧的文章對你有幫助,記得點贊、收藏、加關(guān)注!

作者聲明本文無利益相關(guān),歡迎值友理性交流,和諧討論~

,

聲明:本站所有文章,如無特殊說明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個人或組織,在未征得本站同意時,禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進行處理。