有的小伙伴发现我已经换了新的框架了,这是我新开发的项目,由于实在是受不了 hexo 缓慢的构建机制,每次调试都需要运行hexo 三件套,实在是苦不堪言,伴随着上班以后,SSG 终究还是让我难以忍受,所以就有了anheyu-app
新的框架使用的是 Golang+Vue3 构建,在原本的hexo基础上支持一些新的特性,比如(全文隐藏、文件分享、文件整理、存储策略、第三方登录、微信/支付宝支付、前台编辑/后台编辑)等等,并且性能也得到了很大的提升。
安装
今天给大家带来的是 anheyu-app 的安装图文教程。
推荐使用docker-compose安装,如果你想二次开发的话,可以尝试源码部署或者二进制部署,系统会自动检测环境有没有VIPS、FFMpeg。
这里我使用的是宝塔作为运维面板,如果你是1panel或者其他的话,此处不做相关延伸,理论上是一样的,登录进宝塔面板以后点击侧边栏,安装docker。
选定数据文件夹
找一个目录里面新增 docker-compose.yml 文件
文件内容如下:
yml
启动
在这个目录打开终端,执行
bash
docker compose up -d
运行
启动后需要绑定一个自定义域名,当然如果不绑定域名的话就会运行在 https://服务器ip:8091 上
新增一个网站,并添加反向代理
然后访问域名,并且在路径上添加/login注册,比如我的就是,https://blog.anheyu.com/login
并且在左边 SSL配置上域名证书,就可以https访问了。
更新维护
在右边可以修改程序的版本号,然后点击保存,更新镜像即可更新程序版本。
迁移流程
Anheyu 应用数据:这些是本地目录,通过 volumes 挂载到 anheyu 服务中。
TEXT
./data
./themes
./static
./backup
PostgreSQL 数据库:数据存储在名为 database_postgres 的 Docker 卷 (Volume) 中。
Redis 数据:数据存储在名为 redis_data 的 Docker 卷 (Volume) 中。(由于Redis都是临时数据,故不做特意备份。)
此外,docker-compose.yml 文件本身也需要备份。
备份步骤 (在旧服务器上)
为了确保数据一致性,特别是在备份数据库时,首先需要停止所有服务。
进入 docker-compose.yml 所在的目录
停止并移除容器
bash
docker compose down
备份数据库 (PostgreSQL),由于数据库文件存储在 Docker 卷中,直接复制文件风险很高。我们将使用 pg_dump 来创建一个安全的 SQL 备份文件。
单独启动数据库服务:
bash
docker compose up -d anheyu_postgresql
运行此命令,直到 anheyu_postgresql 的状态显示为 (healthy)
执行备份:
此命令会连接到正在运行的 anheyu_postgresql 容器,并执行 pg_dump。
(注意:根据你的配置 POSTGRES_HOST_AUTH_METHOD=trust,备份时不需要密码)
bash
docker compose exec -T anheyu_postgresql pg_dump -U anheyu -d anheyu > anheyu_db_backup.sql
你现在应该在当前目录下有了一个 anheyu_db_backup.sql 文件。
备份应用文件和配置
我们将把所有的本地应用数据和 docker-compose.yml 文件打包。
确保你在 docker-compose.yml 所在的目录
bash
tar -czvf anheyu_app_files.tar.gz data themes static backup docker-compose.yml
停止剩余服务并整合
bash
docker compose down
整合备份:
现在,你的目录下应该有 2 个核心备份文件:
anheyu_db_backup.sql (数据库)
anheyu_app_files.tar.gz (应用文件和配置)
将这两个文件安全地传输到你的新服务器 (例如使用 scp 或 rsync)。
迁移与恢复步骤
将 anheyu_app_files.tar.gz 传输到你希望部署应用的目录,然后解压。
创建一个目录,例如
bash
mkdir /opt/anheyu
cd /opt/anheyu
bash
tar -xzvf anheyu_app_files.tar.gz
解压后,你将看到 docker-compose.yml 以及 data, themes, static, backup 目录。
恢复数据库 (PostgreSQL)
创建 Docker 卷:
docker volume create database_postgres
单独启动数据库服务:
确保你在 docker-compose.yml 所在的目录
bash
docker compose up -d anheyu_postgresql
导入 SQL 备份:
bash
cat anheyu_db_backup.sql | docker compose exec -T anheyu_postgresql psql -U anheyu -d anheyu
现在所有数据都已恢复,你可以启动完整的应用程序了。
bash
docker compose up -d
在浏览器中打开 https://新服务器IP:8091 ,检查数据是否都已恢复。
日常备份
备份数据库的脚本,将这个脚本放到服务器上,然后使用宝塔的计划面板定时运行即可,然后再使用计划面板备份一下应用数据,也就是那 4 个文件夹。

