当前位置:首页 > 新鲜资讯 > 记录使用电报群来做 docker 项目的备份网盘

记录使用电报群来做 docker 项目的备份网盘

2年前 (2024-08-26)admin新鲜资讯150

现在很多项目会使用 docker 部署,我最常用的 docker 项目是 uptime-kuma 和 umami。之前运行亚马逊云 AWS 的 light sail 上,三个月的试用期马上就到了,前几天发现谷歌云长期免费服务器,每月200GB流量也够折腾。所以打算把 uptime-kuma 这个 docker 项目迁移到谷歌云上,迁移和备份过程如下:

文章目录

  • 1 1、提取原主机 uptime-kuma 的数据文件
  • 2 2、将提取的数据文件转移至新主机,部署项目
  • 3 3、备份到电报群组

1、提取原主机 uptime-kuma 的数据文件

得益于之前部署 uptime-kuma 项目的时候将项目的数据文件挂载到宿主机目录,所以提取数据文件很简单。以下是原 docker-compose.yml 文件内容:

services:
  uptime-kuma:
    image: louislam/uptime-kuma
    container_name: uptime-kuma
    volumes:
      - ./uptime-kuma:/app/data
    ports:
      - 3001:3001

可看出之前已将 /app/data 中的数据挂载到宿主机的 ./uptime-kuma 目录中,这就方便了,来到项目目录路径 /uptime-kuma 下,执行如下代码,进行压缩,取名为backup.tar.gz。

tar -czf backup.tar.gz uptime-kuma

2、将提取的数据文件转移至新主机,部署项目

将步骤1中的备份文件通过 FTP 或 SCP 传到新主机,这次为了以后迁移更加方便,直接将项目部署在 /var/docker/uptime-kuma 目录,参考如下 docker-compose.yml 文件内容:

services:
  uptime-kuma:
    image: louislam/uptime-kuma
    container_name: uptime-kuma
    volumes:
      - /var/docker/uptime-kuma:/app/data
    ports:
      - 3001:3001

所以要提前创建 /var/docker/uptime-kuma 目录,同时将备份的压缩文件上传到该目录下。

mkdir -p /var/docker/uptime-kuma

操作完成后,在 /var/docker/uptime-kuma 目录下直接运行:

docker-compose up -d

完成项目部署,直接在浏览器打开http://ip+端口3001,如果恢复的成功,则是直接登录的窗口,如失败,会是让你创建账号的窗口。这点可以判断是否恢复成功。

3、备份到电报群组

提前准备好电报机器人的API和频道ID,然后按如下操作:

在 /var/docker/uptime-kuma 目录下创建 backup.sh 脚本

cd /var/docker/uptime-kuma
nano backup.sh

拷贝以下脚本内容到 backup.sh 文件中:

#!/bin/bash

# Telegram Bot API token
token="替换为你的电报机器人 API "

# Chat ID of the group
chat_id="替换为你电报的频道ID"

# 定义备份目录
backup_dir="/backup"

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

# 备份docker_volumes目录中的数据到备份目录
cp -r /var/docker/uptime-kuma "$backup_dir"

# 压缩备份文件夹
timestamp=$(date +"%Y-%m-%d_%H-%M-%S")
backup_file="docker_uptime_kuma_$timestamp.tar.gz"
tar -czf "$backup_dir/$backup_file" -C "$backup_dir" uptime-kuma

# 发送备份文件到电报群组
curl -F chat_id="$chat_id" -F document=@"$backup_dir/$backup_file" "https://api.telegram.org/bot$token/sendDocument"

给 backup.sh 添加执行权限:

chmod + x backup.sh

然后在当前目录执行如下命令:

bash back.sh

此时,如果电报群组中收到了备份文件,则说明成功,否则,再仔细检查一下,是否哪里出了问题。

既然手动执行可行,那么我们完全可以加入到系统自动执行命令中,我们输入:

crontab -e

首次执行,会要求选择编辑器,我习惯了 nano,直接选择1即可。

之后,我们在打开的文件中添加:

0 8 * * * /bin/bash /var/docker/uptime-kuma/back.sh

这句代码的意思是在每天早上八点会自动执行该脚本,如果担心哪里有误,可以先将时间改为测试的下一分钟,看是否执行成功,然后再改为一个固定的时间点。

好了,这就是今天的分享。如果大家有更为方便好用的方法或是其它好玩的项目,可以分享给我哟。

欢迎大家订阅电报频道:豪鲁斯兴趣网播报  和公共社区:豪鲁斯兴趣网论坛 。

感谢打赏支持

豪鲁斯兴趣网论坛油管频道电报频道电报聊天

扫描二维码推送至手机访问。

版权声明:本文由豪鲁斯兴趣网发布,如需转载请注明出处。

本文链接:https://w.haolusi.com/?id=1775

分享给朋友:

“记录使用电报群来做 docker 项目的备份网盘” 的相关文章

现在的网吧都这么高端了?记录和发小一起去网吧的经历,原来我是井底之蛙

现在的网吧都这么高端了?记录和发小一起去网吧的经历,原来我是井底之蛙

最近因为长期伏案工作,我身体出现了一些不适症状,如头痛和颈部疼痛。为了恢复健康,我暂时远离了电脑,博客停止更新了一段时间,增加了户外活动和家人互动时间。正当我享受着这段轻松时光时,一位发小邀请我去网吧体验。说实话,我已经记不清上次去网吧是什么时候了,但既然收到邀约,我也不好推辞。抱着好奇的心情,我们...

谷歌表示,它有义务向美国政府披露用户的机密信息

谷歌表示,它有义务向美国政府披露用户的机密信息

谷歌告知用户,它有义务与美国当局分享机密数据,这引发了隐私问题,并强调了大型科技公司的数据安全问题。搜索巨头谷歌向用户发送了一封电子邮件,告知他们有义务向美国政府当局披露某些机密信息。对于科技爱好者来说,这并不奇怪,因为一直有暗示政府可以访问用户数据。互联网上一直存在着永无止境的隐私问题,尤其是在用...

为什么信用卡被称为“银行中最赚钱的产品”以及维萨万事达卡是如何赚钱?

为什么信用卡被称为“银行中最赚钱的产品”以及维萨万事达卡是如何赚钱?

大家好,我是兔哥。最近,网络上看到一张关于 VISA/Master 维萨万事达卡如何赚钱的支付流程图,想和大家分享一下为什么信用卡被称为“银行中最赚钱的产品”以及 VISA/Master 维萨万事达卡是如何赚钱的。我们一起来看看吧。文章目录1 信用卡的利润来源2 VISA 和 Mastercard...

分享博客运营心得:博客访问量人数突然增多,吓得我赶紧去查看服务器日志

分享博客运营心得:博客访问量人数突然增多,吓得我赶紧去查看服务器日志

大家好,我是兔哥。今天跟大家分享一个有趣的经历:我的博客访问量突然暴增,吓得我赶紧去查看服务器日志。这个过程中,我不仅见证了一场精彩的奥运赛事,还发现了一些关于博客运营的有趣现象。文章目录1 情景复现2 突如其来的访问高峰3 分析访问日志4 从新手到小有成就5 博客运营的心得体会6 未来的期望与挑战...

最强密码管理软件 1Password 家庭组免费一年,用过之后回不去了

最强密码管理软件 1Password 家庭组免费一年,用过之后回不去了

最近,有网友发现,1Password 正在进行一个免费的活动,免费时间竟然长达一年!如果你还没有用过这款软件,现在就是个绝佳的机会。让我们一起来看看这个活动的详情,以及 1Password 的使用体验。文章目录1 1Password 免费一年2 1Password使用体验2.1 安全性与易用性2.2...

如何在 Windows 与 Mac 系统中永久禁用谷歌浏览器的自动更新?

如何在 Windows 与 Mac 系统中永久禁用谷歌浏览器的自动更新?

相信不少朋友都遇到过Chrome突然自己更新,结果打断了正在进行的工作,甚至还可能导致某些网页或插件不兼容的情况。别担心,我这就带大家一起来解决这个烦恼!浏览器和系统一样,频繁的自动更新可能会对当前工作或学习状态造成困扰。禁用 Chrome 更新可以确保完全控制浏览器更新的时间和方式,且最近 Goo...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。