简单介绍
beancount 是一种复式记账的语言,可以将交易记录在文本文件中,可以做很多的脚本处理,还有 Web 界面可以查看账目。
复式记账
基于会计恒等式产生的记账形式,每笔交易的结果至少被记录在一个借方和一个贷方的账户,且该笔交易的借贷双方总额相等,即 ”有借必有贷,借贷必相等“ 。
资产 = 负债 + 所有者权益
资产 = 负债 + 所有者权益 + (收入 - 费用)
复式记账可以做到对资金的强掌控,每一笔资金的来源和去向一清二楚。
本地安装
1 | # 本文所有 python 环境都是 python3 |
安装完成即可开始记账,如何记账可以参考文章最下面的几篇博客。
网页访问
我是用 Docker 部署 fava 来使用的,一般小笔的交易直接在 fava 的编辑器中打开账本进行记账。
建立部署文件夹
1 | # 进入账本文件夹中执行 |
记录依赖
1 | # 进入 venv |
Dockerfile
创建 Dockerfile 文件,然后输入以下内容
1 | FROM python |
Docker Compose
创建 docker-compose.yml 文件,输入以下内容(具体配置可按自己的需求改变)
1 | version: "3.3" |
注意:
- 挂载的 volumes 中的 .. 是因为上面这些文件都在账本目录下的 deploy 文件夹中,.. 正好是账本文件夹。
- 主账本名称应该为 main.bean
部署网站
1 | docker-compose up -d --buil |
之后可以访问: http://localhost:8888/ 查看账本是否部署成功