Skip to content

Latest commit

 

History

47 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RepoArk

在服务器中运行服务,在WEB管理界面设置备份文件和定时任务,实现定时备份数据到GitHub、GitCode、Gitee私有仓库中去。


仪表盘 备份设置
任务历史 定时任务

运行方式

1. 一键构建并运行

./scripts/build.sh
./git-backup-server 

首次启动会在 ./data/app.db 创建 SQLite 库并写入默认配置(二进制运行时数据目录为当前工作目录下的 data/)。 默认管理员账号:admin / admin(请尽快在「用户中心」中修改)。

2. 开发模式

cd server && go run .
cd web && npm install && npm run dev

打开 http://localhost:5173 进行前端开发调试。

3. Docker 运行

  • 支持 linux/amd64linux/arm64,直接拉取运行即可:
# 拉取最新镜像
docker pull ghcr.io/dqzboy/repoark:latest

# 运行(数据持久化到宿主机 ./data)
docker run -d --name repoark-server \
  -p 8080:8080 \
  -v "$(pwd)/data:/app/data:Z" \
  -v /:/host:ro \
  -e HOST_ROOT=/host \
  ghcr.io/dqzboy/repoark:latest

启动后访问 http://localhost:8080 。默认管理员账号:admin / admin

4. Docker Compose 运行

项目根目录已提供 docker-compose.yml,直接一键启动:

docker compose up -d

停止与清理:

docker compose down

如需指定版本,编辑 docker-compose.yml 中的 image 标签(如 :v1.0.0)。数据持久化在宿主机 ./data 目录。数据挂载使用 :Z,以兼容开启 SELinux 的 CentOS、Rocky Linux、AlmaLinux 等系统。

备份宿主机上的文件 / 文件夹(Docker 专属)

容器有独立的文件系统隔离,默认看不到宿主机的 /etc/var/www 等目录。要像二进制直接运行那样在「备份配置」里填写真实路径(如 /etc/nginx/conf.d),需要把宿主机根目录挂进容器并启用路径映射:

提示:- /:/host:ro 以只读方式把整棵宿主机目录树挂到容器 /host,一次覆盖所有分散目录,无需逐个挂载;只读挂载可避免备份程序误改宿主机文件。

Docker 部署时建议按下面的含义填写。临时任务目录和备份源必须分开:

临时任务目录:/app/data/tmp/gitcode
备份节点名称:blog-prod
宿主机根路径映射:/host
备份源路径:/data/RepoArk

“备份节点名称”只是远程仓库中的一级目录名,用来区分不同 RepoArk 实例。首次启动会生成一个稳定名称并保存到 SQLite,也可以在页面中改成 blog-prodnas-home 这类更易读的名称

5. 使用流程

  1. 登录后进入「备份配置」,填写 GitHub 用户名、Token、仓库名、分支,以及要备份的源路径(如 /etc/passwd/etc/nginx/conf.d)。
  2. 进入「执行备份」点击「开始备份」,后端会按当前配置执行备份,页面实时显示日志。
  3. 在「任务历史」可查看每次备份的结果与完整日志。

前提条件:

点击展开 ...

1、 创建GitHub仓库,设置为私有

2、 创建GitHubToken,给个pull、push权限即可

注意:把Toekn保留下来,只会出现一次。在后台配置时需要使用到!

💌 推广

描述信息 图文介绍
提供高性价比的海外VPS,支持多种操作系统,适合搭建Docker代理服务。 RackNerd
CloudCone 提供灵活的云服务器方案,支持按需付费,适合个人和企业用户。 CloudCone
Telegram Bot: 点击联系 | E-Mail: support@dqzboy.com

*仅接受长期稳定运营,信誉良好的商家

About

🔥🔥自动化备份重要数据到GitHub仓库

Topics

Resources

Stars

26 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages