Docker相关自动自行脚本

自动清除日志脚本

#!/bin/sh
echo "==================== start clean docker containers logs =========================="
crutime=$(date '+%Y-%m-%d %H:%M:%S')
logfile="/home/iretailer/ftpServer/clearLogfile.log"
logs=$(find /var/lib/docker/containers/ -name *-json.log)

for log in $logs
        do
                echo "$crutime  clean logs : $log"  >>$logfile
                echo "$crutime  clean logs : $log"
                cat /dev/null > $log
        done


echo "==================== end clean docker containers logs   =========================="

mysql 数据库自动备份脚本

#!/bin/bash
docker_name="mysql_iretailer"
data_dir="/home/iretailer/mysql_iretailer/mnt"
dataname="insight"

docker exec  ${docker_name}  mysqldump  -uroot -pir123345 -a -R ${dataname} |zip >  "$data_dir/${dataname}`date +%Y%m%d`.zip"
echo "`date +'%Y-%m-%d %H:%M:%S'` 备份完成 " >> $data_dir/backup.log


# 删除5天前的
find $data_dir  -name ${dataname}'*.zip' -type f -mtime +5 -exec rm -rf {} \;
echo "`date +'%Y-%m-%d %H:%M:%S'` 删除完成 " >> $data_dir/backup.log

数据库自动备份并上传到 ftp服务器

#!/bin/bash
data_dir="/home/iretailer/mysql_bk"
dataname="insight"
bakfilename="${dataname}`date +%Y%m%d`.zip"

cd ${data_dir}
echo "`date +'%Y-%m-%d %H:%M:%S'` 开始备份 " >> $data_dir/backup.log
mysqldump  -uroot -pir123345 -a -R ${dataname} |zip > ${bakfilename}
echo "`date +'%Y-%m-%d %H:%M:%S'` 备份完成 " >> $data_dir/backup.log

cd ${data_dir}
echo "`date +'%Y-%m-%d %H:%M:%S'`开始上传" >> $data_dir/backup.log

ftp -v  -n<< END
open 172.30.160.28
user administrator fxsyqd6783
binary
lcd ./
prompt
mput ${bakfilename}
close
bye
END

echo "`date +'%Y-%m-%d %H:%M:%S'`上传成功" >> $data_dir/backup.log

#删除3天前的
echo "开始-删除历史备份" >> $data_dir/backup.log

find $data_dir  -name ${dataname}'*.zip' -type f -mtime +3 -exec rm -rf {} \;

echo "完成-删除历史备份" >> $data_dir/backup.log

mysql和influxdb一起备份

#!/bin/bash
docker_mysql="mysql_iretailer"
docker_influxdb="influxdb_iretailer"
data_dir="/home/iretailer/bak_data"
dataname="iretailer"
today="`date +%Y%m%d`back"
all_dir="${data_dir}/${today}"

cd ${data_dir}

mkdir "${today}"

docker exec  ${docker_mysql}  mysqldump  -uroot -piretailer+ -a -R ${dataname} |zip  >  "${all_dir}/mysql_`date +%Y%m%d`.zip"
echo "`date +'%Y-%m-%d %H:%M:%S'` mysql备份完成 " >> $data_dir/backup.log

docker exec ${docker_influxdb} rm -rf /mnt/databak

docker exec ${docker_influxdb} influxd backup -portable /mnt/databak
echo "`date +'%Y-%m-%d %H:%M:%S'` influxdb备份完成 " >> $data_dir/backup.log

docker cp ${docker_influxdb}:/mnt/databak ${all_dir}

zip -r  ${today}'.zip' "${today}"

rm -rf "${today}"

#删除5天前的
find $data_dir  -name ${dataname}'*.zip' -type f -mtime +5 -exec rm -rf {} \;
echo "`date +'%Y-%m-%d %H:%M:%S'` 删除完成 " >> $data_dir/backup.log

转载于:https://my.oschina.net/u/3350266/blog/2049654

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值