惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Security Archives - TechRepublic
Security Archives - TechRepublic
T
The Exploit Database - CXSecurity.com
P
Proofpoint News Feed
Scott Helme
Scott Helme
NISL@THU
NISL@THU
Cisco Talos Blog
Cisco Talos Blog
C
Cybersecurity and Infrastructure Security Agency CISA
AWS News Blog
AWS News Blog
V
Vulnerabilities – Threatpost
J
Java Code Geeks
U
Unit 42
The GitHub Blog
The GitHub Blog
H
Help Net Security
T
Tenable Blog
aimingoo的专栏
aimingoo的专栏
Jina AI
Jina AI
Spread Privacy
Spread Privacy
Apple Machine Learning Research
Apple Machine Learning Research
人人都是产品经理
人人都是产品经理
L
Lohrmann on Cybersecurity
T
Threatpost
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Engineering at Meta
Engineering at Meta
A
About on SuperTechFans
I
InfoQ
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog
L
LINUX DO - 最新话题
K
Kaspersky official blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
T
Threat Research - Cisco Blogs
C
Check Point Blog
T
The Blog of Author Tim Ferriss
有赞技术团队
有赞技术团队
宝玉的分享
宝玉的分享
Help Net Security
Help Net Security
Google DeepMind News
Google DeepMind News
A
Arctic Wolf
Y
Y Combinator Blog
N
News | PayPal Newsroom
M
MIT News - Artificial intelligence
Latest news
Latest news
H
Hacker News: Front Page
Blog — PlanetScale
Blog — PlanetScale
腾讯CDC
I
Intezer
爱范儿
爱范儿
F
Fortinet All Blogs
P
Palo Alto Networks Blog
C
CERT Recently Published Vulnerability Notes

二丫讲梵

学习周刊-总第258期-2026年第15周 学习周刊-总第257期-2026年第14周 学习周刊-总第256期-2026年第13周 学习周刊-总第255期-2026年第12周 学习周刊-总第254期-2026年第11周 学习周刊-总第253期-2026年第10周 临时插播一条羊毛,免费领取450元大模型API代金券 学习周刊-总第252期-2026年第09周 学习周刊-总第251期-2026年第08周 学习周刊-总第250期-2026年第07周 学习周刊-总第249期-2026年第06周 诚邀评论,聊聊你所知欲知的我 学习周刊-总第248期-2026年第05周 我的QQ动态之2015年 我的QQ动态之2014年 我的QQ动态之2013年 我的QQ动态之2012年 我的QQ动态-2010-2011年 我的QQ动态-创栏小叙 学习周刊-总第247期-2026年第04周 Nexus社区版权益阉割--一文告诉你有哪些版本可以选择 学习周刊-总第246期-2026年第03周 学习周刊-总第245期-2026年第02周 学习周刊-总第244期-2026年第01周 学习周刊-总第243期-2025年第52周 学习周刊-总第242期-2025年第51周 开源项目ZenOps:带你领略禅意运维 学习周刊-总第241期-2025年第50周 用京东金融,享负债人生 学习周刊-总第240期-2025年第49周 学习周刊-总第239期-2025年第48周 整理我在静态服务透明代理上的极致求索之路,最后一个你绝想不到 学习周刊-总第238期-2025年第47周 我们输了,但收获颇多 太多了,太多了 学习周刊-总第237期-2025年第46周 学习周刊-总第236期-2025年第45周 学习周刊-总第235期-2025年第44周 二五年国庆二三事 学习周刊-总第234期-2025年第43周 学习周刊-总第233期-2025年第42周 学习周刊-总第232期-2025年第41周 学习周刊-总第231期-2025年第40周 学习周刊-总第230期-2025年第39周 西湖毅行 2025年开源世界逸闻三则 学习周刊-总第229期-2025年第38周 手抄《与妻书》 CNB开发与构建基于docker-cache缓存复用的配置实践心得 学习周刊-总第228期-2025年第37周 父亲善行录 学习周刊-总第227期-2025年第36周 带你认识我之看看我的高中同学录(其二) 学习周刊-总第226期-2025年第35周 带你认识我之看看我的高中同学录(其一) 认识神级MCP工具系列--用anyquery和数据库交互 学习周刊-总第225期-2025年第34周 学习周刊-总第224期-2025年第33周 学习周刊-总第223期-2025年第32周 学习周刊-总第222期-2025年第31周 学习周刊-总第221期-2025年第30周 CNB云原生开发环境届的瑞士军刀,详解qifei项目 学习周刊-总第220期-2025年第29周 写在博客发表文章1000篇的节点 从claude cli的体验聊聊最大的敌人是我们自己的成见 学习周刊-总第219期-2025年第28周 学习周刊-总第218期-2025年第27周 学习周刊-总第217期-2025年第26周 理论正确,事实错误 学习周刊-总第216期-2025年第25周 学习周刊-总第215期-2025年第24周 学习周刊-总第214期-2025年第23周 学习周刊-总第213期-2025年第22周 学习周刊-总第212期-2025年第21周 从赵心童世锦赛夺冠聊聊我的斯诺克情缘 学习周刊-总第211期-2025年第20周 记录二五年五一之短暂回归家庭 学习周刊-总第210期-2025年第19周 学习周刊-总第209期-2025年第18周 学习周刊-总第208期-2025年第17周 Go开发实践之Gin框架将前端的dist目录embed到二进制 学习周刊-总第207期-2025年第16周 近期关于cobra库的一些实践心得总结 学习周刊-总第206期-2025年第15周 我的嗜好--嗑瓜子 记大宝参加幼儿园组织的清明烈士陵园扫墓活动 学习周刊-总第205期-2025年第14周 学习周刊-总第204期-2025年第13周 前端开发小笔记--在数组中给字段添加值与删除字段的操作 学习周刊-总第203期-2025年第12周 人生实苦,何以自渡 学习周刊-总第202期-2025年第11周 近期发现的一些优秀的工具提名(一) 学习周刊-总第201期-2025年第10周 学习周刊-总第200期-2025年第09周 记一次女友喝醉使我忍术破功 爱情风波--一次分手又复合的经历 学习周刊-总第199期-2025年第08周 整理我的信息源 学习周刊-总第198期-2025年第07周
vuepress-vdoing主题配置自建不蒜子统计
二丫讲梵 · 2025-07-21 · via 二丫讲梵

# 前言

近几日,不蒜子官方出现过一波三天宕机的情况,使得自建不蒜子这一早该实施的事项,让我不得不开始折腾起来了。

进入正文之前,先对不蒜子表达一下感谢,一个完全免费的统计服务,影响力如此广大,始终无偿提供服务,向维护者表达致敬!

放一张不蒜子官网图,算是切到自建的一个合影留念。

# 选型

现在社区中,兼容不蒜子统计方式的开源项目也有不少,我了解到的有:

其中第一个项目是基于 go 语言编写,配置部署简单,且完全实现了不蒜子的功能,是我这次自建的项目选择。

# 部署

官方提供了镜像和 compose 文件,可以直接部署,我这里考虑到长久使用的版本固定需求,因此将两个镜像都上传到了自己的制品库中。

services:
  redis:
    image: "docker.cnb.cool/znb/images/bsz:redis"
    container_name: "bsz_redis"
    ports:
      - "6399:6379" # 这个端口是同步时使用,同步完毕可去掉
    volumes:
      - ./data/redis:/data
  bsz:
    image: "docker.cnb.cool/znb/images/bsz:bsz"
    container_name: "bsz_bsz"
    ports:
      - "5080:8080"                            # 修改映射到宿主机的端口 host:container
    links:
      - redis
    depends_on:
      - redis
    environment:
      WEB_LOG: "true"     # 是否开启日志
      WEB_DEBUG: "false"  # 是否开启debug模式
      WEB_CORS: "*"       # 跨域访问
      BSZ_EXPIRE: 0       # 统计数据过期时间 单位秒, 请输入整数 (无任何访问, 超过这个时间后, 统计数据将被清空, 0为不过期)
      BSZ_SECRET: "bsz"   # 签名密钥 // 请设置为任意长度的随机值
      API_SERVER: https://bsz.eryajf.net  # 填写你的 API 地址
      REDIS_ADDRESS: redis:6379     # redis 地址
      BSZ_PATHSTYLE: "true"
      BSZ_ENCRYPT: MD516

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

然后直接拉起服务:

部署还是比较简单的,应用会将数据存到 redis,然后 redis 会把数据存到 data 目录下,因此以后如果自己也要迁移,只需要将整个目录挪走再拉起即可。

# 同步旧数据

当我们迁移到自建,原来博客积累的 uv 和 pv 数据这笔宝贵的财富当然也需要进行迁移,上边提到的 busuanzi 项目,官方也提供了一个迁移工具,可以简单配置,就能将不蒜子官方关于自己站点的统计数据,同步到自建的 redis。

工具地址: https://github.com/soxft/busuanzi-sync (opens new window)

第一步,下载迁移工具二进制。

$ wget https://github.com/soxft/busuanzi-sync/releases/download/v0.0.5/busuanzi-sync-linux-amd64-v0.0.5

1

第二步,编辑配置文件。

# 在此处指定您的博客 sitemap 地址
SITEMAP_URL: https://wiki.eryajf.net/sitemap.xml

# 线程数 避免过高导致 QPS 限制 / 不要超过5
THREADS: 2
# 单 URL 最大重试次数
MAX_RETRY: 10

REDIS_ADDR: 127.0.0.1:6379
REDIS_DB: 0
REDIS_PWD: ""
REDIS_PREFIX: bsz
REDIS_TLS: false

# 路径样式 与加密方案
BSZ_PATH_STYLE: true
BSZ_ENCRYPT: MD516

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

第三步,执行同步。

# 增加执行权限
$ chmod +x busuanzi-sync-linux-amd64-v0.0.5
# 运行工具,执行同步
$ ./busuanzi-sync-linux-amd64-v0.0.5

1
2
3
4

执行过程中可以清晰看见,如果看到所有任务已完成,则说明数据已成功同步。

# 调整配置

调整配置就比较简单了,有两个需要调整的地方:

  1. 将原来请求 https://busuanzi.ibruce.info/ 的域名,更改为自建不蒜子的域名。
  2. 需要注意,自建项目与官方不蒜子的标签有差异,需要针对自己的博客进行相应的更改。
    1. 旧:busuanzi_container_site_pv
    2. 新:busuanzi_site_pv
    3. 其他几个同理。 具体配置说明,可参考文档:使用方法 (opens new window)

我用的 Vdoing 主题中的网站统计信息,是用的 Teek 大佬提供的方案,将对应请求域名调整之后,更改一下获取的标签就可以了。

回想这几年博客的折腾历史,如下:

  • 关于评论:我的折腾过程是 gitalk--> valine -->Artalk
  • 关于搜索:我的折腾过程是 fulltext-sarch --> meilisearch
  • 关于图床:折腾过程更是可以单独开一篇文章来记录。

如今,终于把统计也改为了自建,我终于可以说一句:博客已彻底达到自建的完全体。