Mindoc自动备份

MinDoc 简介

MinDoc 是一款针对 IT 团队开发的简单好用的文档管理系统。

MinDoc 的前身是 SmartWiki 文档系统。SmartWiki 是基于 PHP 框架 laravel 开发的一款文档管理系统。因 PHP 的部署对普通用户来说太复杂,所以改用 Golang 开发。可以方便用户部署和实用。

开发缘起是公司 IT 部门需要一款简单实用的项目接口文档管理和分享的系统。其功能和界面源于 kancloud 。

可以用来储存日常接口文档,数据库字典,手册说明等文档。内置项目管理,用户管理,权限管理等功能,能够满足大部分中小团队的文档管理需求。

MinDoc 安装目录

安装系统环境:Ubuntu 18.04.6 LTS
安装目录:/home/narada/mindoc
启动命令:./mindoc_linux_musl_amd64
定时脚本目录:/home/mulan/mindoc_backup.sh
本机备份目录:/home/narada/mindoc/backup/

MinDoc备份脚本

#!/bin/bash

# SQLite3数据库文件路径
db_file="/home/narada/mindoc/db/mindoc.db"

# 备份目录路径
backup_dir="/home/narada/mindoc/backup/"

# 获取当前时间戳,并格式化为字符串
timestamp=$(date +"%Y-%m-%d_%H-%M-%S")

# 构建备份文件名
backup_file="backup_$timestamp.db"

# 创建备份目录(如果不存在)
mkdir -p "$backup_dir"

# 复制数据库文件到备份目录
cp "$db_file" "$backup_dir$backup_file"

# 输出备份文件路径
echo "Backup file created: $backup_dir$backup_file"

#同步本地 backup_dir目录到远端/opt/mindoc_backup目录下
#rsync -avzPrt --delete ${backup_path} root@${backup_host}:/opt/mindoc_backup/ >> ${backup_log}

# 设置本地备份目录和远程目录
LOCAL_BACKUP_DIR="/home/narada/mindoc/backup/"
REMOTE_SERVER="[email protected]"
REMOTE_DIR="/opt/mindoc_backup/"

# 使用rsync同步目录
rsync -avz --progress $LOCAL_BACKUP_DIR $REMOTE_SERVER:$REMOTE_DIR

加入定时任务:

结合crontab实施自动定时备份,比如每天5点备份一次
crontab -e #添加定时任务

crontab -l #查看已添加定时任务

[root@gitlabdev ~]# crontab -l
0 5 * * * /bin/bash /home/mulan/mindoc_backup.sh > /dev/null 2>&1

你可能感兴趣的:(linux,运维)