前言
买了很多VPS,虽然厂商会在服务到期给你发邮件提醒续费,但是应该有不少小伙伴和我一样不同服务商可能用的是不同的邮箱,为了方便统一管理,也为了看看自己一年到底花了多少钱在这上面,这周我们就来搭建一个开源的个人订阅跟踪器!
项目展示
Wallos是一个强大的、开源的、可自托管的网络应用程序,旨在帮助你轻松管理财务。告别复杂的电子表格和昂贵的财务软件——Wallos简化了跟踪支出的过程,并帮助您更好地掌控自己的财务生活。
特点:
订阅管理:跟踪您的定期订阅和付款,确保您永远不会错过截止日期。
类别管理:将您的支出组织成可自定义的类别,使您能够深入了解自己的消费习惯。
多货币支持:Wallos支持多种货币,允许您以自己选择的货币管理财务。
货币转换:与Fixer API集成,这样您就可以获取汇率并在主要货币上查看所有订阅内容。
数据隐私:作为一个自托管应用程序,Wallos确保您的财务数据始终保持私密和安全存储在自己的服务器上。
定制化:通过可定制的类别、货币、主题和其他显示选项来满足Wallos适合你需求。
排序选项:允许你从不同角度查看你的订阅内容。
Logo搜索: 如果没有上传logo, Wallos可以在网络中搜索到相应服务商标志
移动视图: 随时随地使用Wallos
统计信息: 深入了解你花费情况另一种视角
通知: 通过电子邮件收到即将到期付款提醒
多语言支持
官方GitHub地址:https://github.com/ellite/Wallos
Demo:
搭建方式
本次使用Docker
与 Nginx Proxy Manager
进行安装和反代。
创建安装目录
创建一下安装的目录:
sudo -i
mkdir -p /root/data/docker_data/wallos
cd /root/data/docker_data/wallos
创建并编辑 docker-compose.yml
文件
nano docker-compose.yml
填入下面的内容:
version: '3'
services:
wallos:
image: bellamy/wallos:latest
container_name: wallos
restart: unless-stopped
ports:
- 8080:80
volumes:
- ./data:/var/www/html/db
- ./logos:/var/www/html/images/uploads/logos
environment:
- TZ=Asia/Shanghai
然后ctrl+x确认保存退出。
打开服务器防火墙并访问网页(非必需)
打开防火墙的端口 ,以端口8080
为例
查看端口是否被占用(以 8080
为例),输入:
lsof -i:8080 #查看 8080 端口是否被占用,如果被占用,重新自定义一个端口
如果啥也没出现,表示端口未被占用,我们可以继续下面的操作了~
如果出现:
-bash: lsof: command not found
运行:
apt install lsof #安装 lsof
如果端口没有被占用(被占用了就修改一下端口,比如改成 8081
,注意 docker 命令行里和防火墙都要改)
启动Wallos
cd /root/data/docker_data/wallos
docker compose up -d
等待拉取好镜像,出现 done
的字样之后,
理论上我们就可以输入 http://ip:8080
访问了。
但是这边我们推荐先搞一下反向代理!
做反向代理前,你需要一个域名!
反向代理
利用 Nginx Proxy Manager
在添加反向代理之前,确保你已经完成了域名解析
注意:
Nginx Proxy Manager(以下简称 NPM)会用到
80
、443
端口,所以本机不能占用(比如原来就有 Nginx)
直接丢几张图:
注意填写对应的
域名
、IP
和端口
,按文章来的话,应该是8080
IP 填写:
如果 Nginx Proxy Manager 和 stirling pdf 在同一台服务器上,可以在终端输入:
ip addr show docker0
查看对应的 Docker 容器内部 IP。
否则直接填 Wallos所在的服务器 IP 就行。
使用教程
登陆页面注册
登陆页面注册
用户名
和密码
一定更要记得,是用来给以后登录的。
新增订阅
点击左上角新订阅
选好保存即可。
通知
右上角个人账户名
-设置
-下拉找到通知
我个喜欢用TG通知,以下TG举例
设置提前通知天数
点开TG通知页面
勾选已启用
第一行填写TG机器人token,,在BotFather(@BotFather)创建或找到自己的机器人,并记录Token
第二行填写TG账户ID,从username_to_id_bot (https://t.me/username_to_id_bot) 获取你的用户id
点击测试,TG机器人收到通知证明配置无误
最后点击保存即可
在订阅界面启用勾选
为此订阅启用通知
汇率
要展示统一货币的话,还要设置汇率
右上角个人账户名
-设置
-下拉找到Fixer API Key
我是在https://fixer.io/ 申请的免费API,打开网站注册账户并得到一个API密钥,记录下来。把得到的API密钥填写到Fixer API Key
的第一行,第二行提供商选择fixer.io。
再往下拉,找到显示设置
选择这两个(看个人喜好是否选择),即可非人民币订阅显示人民币了。
更新 Wallos
cd /root/data/docker_data/wallos
docker-compose pull
docker-compose up -d # 请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止;docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,完全没有必要浪费那些时间。
docker image prune # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像
提示:
WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N]
输入Y
即可。
卸载 Wallos
同样进入安装页面,先停止所有容器。
cd /root/data/docker_data/wallos
docker-compose down
cd ..
rm -rf /root/data/docker_data/wallos # 完全删除
可以卸载得很干净。
评论区