序
之前的一个Nas用之前实验室的一台老机子改装的,硬盘位有限而且用的也是老硬盘,加上散热奇差,夏天一到,风扇的声音简直闹心,而且最重要的一点是,这个机子的所有权不是我自己hhh,所以年中的时候搭建了自己的一个DIY Nas,配置单如下:
| 硬件 |
型号/参数 |
| 主板 |
云星B365 ITX |
| CPU |
8100T |
| 内存 |
DDR4 16G |
| 散热 |
AN400 |
| 电源 |
康舒250W |
| 机箱 |
优易UE-S6六盘位 |
| 硬盘 |
希捷酷鹰ST4000VX015 4Tx2 |
内存和散热用的都是之前剩下的,硬盘害,现在涨的这么厉害,早知道多买几块了,不过也是存点电影什么的,8T组Raid0毕业前肯定够用了,系统是飞牛Os,整套下来算上硬盘大约2200块,个人感觉还行,主流的编解码都支持,目前几个月用下来,非常安静。
内网穿透
飞牛自带的内网穿透2M不太够用,也不是很想花钱,加上学校的小水管网络,买了100M的套餐,下行大约80M,上行30M,有的时候还不太稳定,就拿自己的Vps做了zerotier的内网穿透。详情见Zerotier内网穿透
虚拟机
安装win11虚拟机(4核心的i3和16GB内存现在用起来发现有点捉襟见肘,但还是能用),使用几个小任务bilidown和抢票软件bypass。实在是太卡了,用起来太膈应了。。
Docker服务
ezbookkeeping
之前记账用了好多软件,但是都感觉不太好用,多设备也不好同步,还要钱,之后换了notion用了个大半年,但是notion有个问题,服务器响应有点慢,这些数据都不在本地,还是有点担心,最近看到了这个开源的docker服务,就想着个部署一下在nas上,自己也能随时随地访问,正好也拿来练习一下docker。
先在飞牛的Docker的存储池中新建一个文件夹ezbookkepping,在此目录下创建三个文件夹:data、log和storage,并创建docker-compose文件,docker-compose里内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
services:
ezbookkeeping: # EzBookkeeping 服务,用于记账应用
image: mayswind/ezbookkeeping # 使用 mayswind/ezbookkeeping 镜像
container_name: ezbookkeeping # 容器名称为 ezbookkeeping
restart: always # 容器总是重启
ports:
- 3080:8080 # 将容器的 8080 端口映射到主机的 3080 端口
volumes:
- /etc/localtime:/etc/localtime:ro # 将主机的本地时间同步到容器
- ./storage:/ezbookkeeping/storage # 持久化存储到主机的 ./storage 文件夹
- ./log:/ezbookkeeping/log # 持久化日志到主机的 ./log 文件夹
environment:
- EBK_DATABASE_TYPE=mysql # 数据库类型为 MySQL
- EBK_DATABASE_HOST=mysql:3306 # 数据库主机为 mysql 服务,端口为 3306
- EBK_DATABASE_NAME=ezbookkeeping # 数据库名称为 ezbookkeeping
- EBK_DATABASE_USER=ezbookkeeping # 数据库用户名为 ezbookkeeping
- EBK_DATABASE_PASSWD=ezbookkeeping # 数据库密码为 ezbookkeeping
- EBK_LOG_MODE=file # 日志模式为文件
- EBK_SECURITY_SECRET_KEY=O0rxWj8gH8z2T9O79l8ndUczIHtUgV6bRY3CZfF0beE= #设置随机的安全密钥
- EBK_MCP_ENABLE_MCP=true # 启用 MCP 功能
depends_on:
- mysql # 在 mysql 服务启动后再启动 ezbookkeeping 服务
mysql: # MySQL 服务,用于存储 EzBookkeeping 数据
image: mysql:8.0 # 使用官方的 MySQL 8.0 镜像
container_name: ezbookkeeping-mysql # 容器名称为 ezbookkeeping-mysql
restart: always # 容器总是重启
volumes:
- ./data:/var/lib/mysql # 将主机的 ./data 文件夹映射到容器的 /var/lib/mysql 目录,用于持久化数据库数据
environment:
- MYSQL_DATABASE=ezbookkeeping # 默认数据库为 ezbookkeeping
- MYSQL_USER=ezbookkeeping # 数据库用户名为 ezbookkeeping
- MYSQL_PASSWORD=ezbookkeeping # 数据库密码为 ezbookkeeping
- MYSQL_ROOT_PASSWORD=ezbookkeeping # MySQL 根密码为 ezbookkeeping
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p ezbookkeeping"] # 检查 MySQL 是否正常运行
retries: 3 # 如果健康检查失败,最多重试 3 次
timeout: 5s # 每次健康检查的超时时间为 5 秒
|
飞牛系统里文件夹的权限已经放开,可以直接运行,待构建完成后,启动容器即可,简单配置以后基本页面如下所示:
ezbookkeeping展示界面
目前使用下来,ezbookkeeping的使用体验还行,亟待后续反馈更新。
2025.12.12 15:57 Update