自搭建不蒜子busuanzi从2.8之前版本升级数据方案教程
之前用星辰同学的自搭建不蒜子已经有一年的时间了,效果和运行速度都非常不错。在日常维护中看见星辰在2.8版本更新了数据结构。为了继续能够接受项目维护,尝试更新一下数据结构。这个文章就是记录这个过程的。
项目
本文由自搭建不蒜子项目作者星辰同学手把手指导。
如何判断你需要这个教程
这个教程适用于2.8版本之前的自搭建不蒜子
停止运行不蒜子
ssh连接服务器,然后cd进入不蒜子的目录,然后执行docker-compose down
把容器停止。
备份dump.rdb
为了避免造成不可挽回的损失,我们首先需要备份原来的数据文件。以宝塔为例。
因为最初使用docker-compose来部署的,数据库在data文件夹下。
下载/data/redius/dump.rdb
修改docker-compose
添加端口给redius,将容器内 redis的 6379 映射到宿主机的 16379上
1 | ports: |
添加完重新执行 docker-compose up -d
下载转换项目
到版本中下载根据你的服务器下载对应的编译的版本。
一般来说Linux服务器是busuanzi-transfer-linux-amd64-v0.0.4
并下载config.yaml文件.
1 | Redis: |
从宝塔进入项目文件夹,新建一个transfer
文件夹
将可执行文件和配置文件(config.yaml)放入文件夹中。
修改配置文件
双击刚才上传的config.yaml文件夹。
Prefix 为 busuanzi 中配置的 Prefix (默认为 bsz)
ToPrefix 可以不用修改
执行可执行文件
在ssh中执行我们刚刚上传的可执行文件,sshcd进入文件夹执行 ./busuanzi-transfer-linux-amd64-xxxxx
例如:./busuanzi-transfer-linux-amd64-v0.0.4
等待迁移的进行,大概几分钟
更改docker-compose
我们修改docker compose添加环境变量
BSZ_PATHSTYLE=false
BSZ_ENCRYPT=MD532
REDIS_PREFIX: “bsz_transfer”
WEB_CORS要改成你所用到的地址,避免跨域问题。
1 | BSZ_PATHSTYLE: false |
重新拉取镜像
修改项目docker-compose的版本(改成最新的版本号或者2.8.5)
1 | xcsoft/busuanzi:v2.8.5 |
在ssh中返回到项目根目录,执行
1 | docker-compose pull |
重新运行
执行
1 | docker-compose up -d |
重新运行busuanzi服务。
- 感谢你赐予我前进的力量