Nas Docker 安装个人记账web项目:firefly_iii &beancount-gs

Nas Docker 安装个人记账web项目:firefly_iii &beancount-gs

1.经过搜索以及GPT的询问,通过预览界面感觉firefly_iii

官方示例demo:https://demo.firefly-iii.org/

官方安装文档:https://docs.firefly-iii.org/firefly-iii/installation/docker/

本人采用的是群晖Nas docker安装:

这个因为是自己个人要用的,懒得装云服务器上了,后面内网穿透即可外部网络访问了

采用的docker compose

官方三个文档地址:

docker-compose文件

https://raw.githubusercontent.com/firefly-iii/docker/main/docker-compose.yml

.env文件(名字改为.env)

https://raw.githubusercontent.com/firefly-iii/firefly-iii/main/.env.example

database.env(名字改为.db.env)

https://raw.githubusercontent.com/firefly-iii/docker/main/database.env

本人的文件:

docker-compose文件

 version: '3'
 
 services:
  app:
    image: fireflyiii/core:latest
    restart: always
    volumes:
      - firefly_iii_upload:/var/www/html/storage/upload
    env_file: .env
    ports:
      - 80:8080
    depends_on:
      - db
  db:
    image: mariadb    
    hostname: fireflyiiidb
    restart: always
    environment:
      - MYSQL_RANDOM_ROOT_PASSWORD=yes
      - MYSQL_USER=firefly
      - MYSQL_PASSWORD=secret_firefly_password # 改成你自己的密码
      - MYSQL_DATABASE=firefly
    volumes:
      - firefly_iii_db:/var/lib/mysql
 volumes:
    firefly_iii_upload:
    firefly_iii_db:

.env的配置修改

 # Use "pgsql" for PostgreSQL
 # Use "mysql" for MySQL and MariaDB.
 # Use "sqlite" for SQLite.
 DB_CONNECTION=mysql
 DB_HOST=db
 DB_PORT=3306
 DB_DATABASE=firefly
 DB_USERNAME=firefly
 DB_PASSWORD=secret_firefly_password   # 改成你自己的密码,与上面保持一致

 

执行命令

 //没权限加sudo即可
 docker-compose -f docker-compose.yml up -d

 

总结:

1.这样写就不用.db.env了,在environment参数里面就写完了

2.修改.env的配置:默认是mysql 你只需要修改这个DB_PASSWORD 为上面的docker-compose.yml文件的密码一样即可,如果需要换成别的数据库,看官方的注释信息改成pgsql或者sqlite都行

3.正常情况下你访问你的 ip+80即可访问,注册第一个账号就是管理员,后面会关闭注册。

4.由于我是部署完之后写博客的,没有第一时间截图,你只需要跟着系统引导即可,选择好中文,后面就通了,可以看上面写的官方显示demo

遇到的问题

一般可以用docker安装的我都会本地笔记本先安装一遍,再去服务器上部署,这样免得在自己的服务器或者Nas一致出现问题。

结果表明,本地windows一切正常,一行命令即可。系统初始化数据库表之后,即可访问。

但是在Nas docker里面,他一直不能访问数据库,我尝试过很多种方法,我把数据库的端口暴露出来,然后手动创建了对应的数据库,但是不能连接

错误

错误如下:但是这个只是警告,翻译过来就是没验证然后被服务器断开了连接。我windows也有这个warning,但是这个正常访问。

官方也有对应的issue,但是是20年的,我也将对应的ip改为宿主机的ip以及权限等等。

 2023-05-20 1:12:30 3 [Warning] Aborted connection 3 to db: 'unconnected' user: 'unauthenticated' host: '172.22.0.4' (This connection closed normally without authentication)

 

 

解决方案:我是采用的postgresql,然后在Nas 里面正常运行

如果反代需要修改.env配置:

自己在.env里面搜索前面的字段

 TRUSTED_PROXIES=**
 
 APP_URL=http://localhost //改为你的域名

 

自己使用之后发现不适合我,有点复杂,但是可以用

---------------------------------------------------------------分割线

beancount-gs的安装

docker-compose.yml文件

 version: "3.9"
 services:
  app:
    container_name: beancount-gs
    image: xdbin/beancount-gs:latest
    ports:
      - "10000:80"
    # volumes 挂载目录会导 /app/public/icons 中的图标被覆盖,这里将默认图标在挂载后重新拷贝图标
    command: >
      sh -c "cp -rn /app/public/default_icons/* /app/public/icons && ./beancount-gs -p 80"
    volumes:
      - ./bak:/app/bak
      - ./config:/app/config
      - ./data:/data/beancount
      - ./icons:/app/public/icons

执行命令

 docker-compose up -d //没权限加sudo 即可
注意

1.如果自己的电脑或者服务器不支持创建对应的文件夹,记得手动创建bak、config、data、icons文件夹

2.端口不能改成别的,只能10000,我测试的时候,改成了10080,但是容器运行了,没有错误,但是没有出来初始化界面。换成10000又可以。所以注意不要修改。可能是bug,也可能是他监听的10000端口,不纠结了,能用就行。

使用地址与教程:

https://www.yuque.com/chuyi-ble7p/beancount-gs/mavcdw

初始化不知道的话,看地址:https://www.yuque.com/chuyi-ble7p/beancount-gs/eq81d8

初始化

 

密钥不是自己设置的密码:而是初始化系统生成的,看自己的docker 这个容器的日志,找到Secret token,这里填上这个即可

后续创建账本的密码是自己设置的,这个是需要第一次初始化填即可

 [Info] [2023-05-21 01:37:52] [System]: beancount-gs start at http://localhost:80 or http://172.20.0.2:80
 [Info] [2023-05-21 01:37:52] [System]: Secret token is xxiaOqxoF62zGkww
 [GIN-debug] Listening and serving HTTP on :80

账本存储位置:账本数据和配置的磁盘存储路径。(默认设置为 /data/beancount 即可)

注意:如果使用 docker 启动服务,这里设置的路径为 docker 容器中的账本存储路径。

例:

volumes:

- "{dataPath:-/docker/beancount}"

以上配置中,即把物理机器的 /machine/beancount 目录映射为 docker 的 /docker/beancount 目录,这里的账本存储位置应该设置为 /docker/beancount。参考:issue21

账本开始日期:账户的默认开始时间。(默认设置为 1970-01-01 即可)

 

使用总结:

收入与支出的数量要一致

支出

 

收入

 

与支出差不多,不过由于是支付宝账号增加金额,所以这里填写正数。建议保存一个模板,下次只需要填写细节和金额即可

 

参考博客:

https://www.yuque.com/chuyi-ble7p/beancount-gs/mavcdw

https://blog.csdn.net/wbsu2004/article/details/124920383

https://blog.csdn.net/wbsu2004/article/details/122583477

 

 

 

 

 

 

 

 

 

 

posted @ 2023-05-21 16:30  忽如一夜娇妹来  阅读(725)  评论(0编辑  收藏  举报