gitlab备份脚本

101.133.234.55 80

www.haoruicloud.com
docker run -d --name nps --net=host -v /data/conf/:/conf ffdfgdfg/nps
docker run -d --name npc --net=host -v /data/conf/:/conf ffdfgdfg/npc -config=/data/conf/npc.conf
cp -a /etc/apt/sources.list.bak1 /etc/apt/sources.list

API Key 已创建
API 访问地址:
https://rancher.fenglincloud.com/v3
Access Key(用户名):
token-rj8n9
Secret Key(密码):
4l5x7lw8w6dn9nx8xql4fkl44t2x4m5xwcfsqvmw6hddmqvqlvcj6f
Access Key 和 Secret Key 可以作为 HTTP 基本身份验证的用户名和密码发送,以授权请求。您也可以将它们组合为 Bearer Token:

Bearer Token:
token-rj8n9:4l5x7lw8w6dn9nx8xql4fkl44t2x4m5xwcfsqvmw6hddmqvqlvcj6f

var=`$JOB_NAME:dev-n-$BUILD_NUMBER`

#!/bin/bash

# gitlab 机房备份路径
LocalBackDir=/backup/bak

# 远程备份服务器 gitlab备份文件存放路径
RemoteBackDir=/www/wwwroot/wiki.fenglincloud.com/dev

# 远程备份服务器 登录账户
RemoteUser=root

# 远程备份服务器 IP地址
RemoteIP=106.15.238.104

#当前系统日期
DATE=`date +"%Y-%m-%d"`

#Log存放路径
LogFile=$LocalBackDir/log/$DATE.log

#将数据所在文件夹bak打包
tar -zcvf $(LocalBackDir)$(date +%Y%m%d).tar.gz $LocalBackDir

# 查找 本地备份目录下 时间为60分钟之内的,并且后缀为.tar.gz的备份文件
BACKUPFILE_SEND_TO_REMOTE=$(find /backup/bak -type f -mmin -60 -name '*.tar.gz*')

#复制文件
cp -r /data/ $LocalBackDir

#新建日志文件
touch $LogFile

#追加日志到日志文件
echo "Gitlab auto backup to remote server, start at $(date +"%Y-%m-%d %H:%M:%S")" >> $LogFile
echo "---------------------------------------------------------------------------" >> $LogFile

# 输出日志,打印出每次scp的文件名
echo "---------------------The file to scp to remote server is: $BACKUPFILE_SEND_TO_REMOTE-------------------------------" >> $LogFile

#备份到远程服务器
scp $BACKUPFILE_SEND_TO_REMOTE $RemoteUser@$RemoteIP:$RemoteBackDir

#追加日志到日志文件
echo "---------------------------------------------------------------------------" >> $LogFile

find /backup/bak -mmin +1 -name "*.tar.gz" -exec rm -rf {} \;

#追加日志到日志文件
echo "-------删除过期备份文件------------------------------------------------------------" >> $LogFile

docker pull harbor.fenglincloud.com/center/java:8
docker tag registry.cn-shanghai.aliyuncs.com/taro-mall/java:8_server-jre harbor.fenglincloud.com/operations/java:8_server-jre

#!/bin/sh
#复制文件
cp -r /data/redis /backup/bak
cp -r /data/mongo /backup/bak
cp -r /data/mysql /backup/bak
#将数据所在文件夹bak打包
tar -zcvf /backup/bak$(date +%Y%m%d).tar.gz /backup
#删除临时文件内容
rm -rf /tmp/backup/bak
#删除改文件夹下超过2小时的文件
find ./ -mmin +120 -name "*.tar.gz" -exec rm -rf {} \;

scp $BACKUPFILE_SEND_TO_REMOTE $RemoteUser@$RemoteIP:$RemoteBackDir
点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像

Title - Artist
0:00