首页 > 其他分享 >Docker实时同步备份数据至阿里云盘

Docker实时同步备份数据至阿里云盘

时间:2024-03-19 16:24:01浏览次数:22  
标签:文件 aliyunpan 云盘 备份 sync ALIYUNPAN Docker

随着互联网的快速发展网站数据的安全性变得越来越重要,一旦网站数据丢失或被损坏将对企业个人的运营产生重大影响。因此做好网站数据的备份工作至关重要,阿里云盘作为阿里巴巴旗下的云存储服务,具有安全高效便捷等特点是备份网站数据的理想选择,但是各大 Linux Windows服务器系统并没有相关的插件功能,最近申请了阿里云盘的openapi接口就根据网上大佬的项目做了一些更改删减,就上线一个Docker容器进行备份数据

项目地址
获取Refresh Token
  • 登录阿里云盘官网https://www.alipan.com/

  • 按F12进入开发者模式选择->应用程序->Refresh Token把值粘贴在配置文件中的ALIYUNPAN_REFRESH_TOKEN选项

配置文件
  • 另存为aliyunpan-sync.yml
version: '3'
services:
  sync:
    image: tickstep/aliyunpan-sync:v0.2.7
    container_name: aliyunpan-sync
    restart: always
    volumes:
      # 指定本地备份目录绝对路径:/tickstep/Documents/设计文档
      - /volume1/docker/aliyunpan-sync/sync:/home/app/data:rw
      # (可选)可以指定JS插件sync_handler.js用于过滤文件,详见下面的插件说明
      #- /volume1/docker/aliyunpan-sync/plugin/js/sync_handler.js:/home/app/config/plugin/js/sync_handler.js
      # (推荐)挂载sync_drive同步数据库到本地,这样即使容器销毁,同步数据库还可以用于以后使用
      - /volume1/docker/aliyunpan-sync/sync_drive/:/home/app/config/sync_drive
    environment:
      - TZ=Asia/Shanghai
      # refresh token
      - ALIYUNPAN_REFRESH_TOKEN=0ae2c9beaXXXXXXXXXXXXX
      # 上传下载链接类型:1-默认 2-阿里ECS环境
      - ALIYUNPAN_TRANSFER_URL_TYPE=1
      # 下载文件并发数
      - ALIYUNPAN_DOWNLOAD_PARALLEL=2
      # 上传文件并发数
      - ALIYUNPAN_UPLOAD_PARALLEL=2
      # 下载数据块大小,单位为KB,默认为10240KB,建议范围1024KB~10240KB
      - ALIYUNPAN_DOWNLOAD_BLOCK_SIZE=1024
      # 上传数据块大小,单位为KB,默认为10240KB,建议范围1024KB~10240KB
      - ALIYUNPAN_UPLOAD_BLOCK_SIZE=10240
      # 指定网盘文件夹作为备份目录,不要指定根目录
      - ALIYUNPAN_PAN_DIR=/数据备份
      # 备份模式:upload(备份本地文件到云盘), download(备份云盘文件到本地), sync(双向同步备份)
      - ALIYUNPAN_SYNC_MODE=upload
      # 优先级,只对双向同步备份模式有效。选项支持三种: time-时间优先,local-本地优先,pan-网盘优先
      - ALIYUNPAN_SYNC_PRIORITY=local
      # 是否显示文件备份过程日志,true-显示,false-不显示
      - ALIYUNPAN_SYNC_LOG=true
      # 本地文件修改检测延迟间隔,单位秒。如果本地文件会被频繁修改,例如录制视频文件,配置好该时间可以避免上传未录制好的文件
      - ALIYUNPAN_LOCAL_DELAY_TIME=3
      # 任务步骤, 支持两种: scan(只扫描并建立同步数据库),sync(正常启动同步任务)
      - ALIYUNPAN_TASK_STEP=sync
      # 登录设备的ID,默认为空,程序会自动生成一个ID
      - ALIYUNPAN_DEVICE_ID=
创建目录
# 指定本地备份目录绝对路径:sync是指定的实时上传数据的目录
mkdir -p /volume1/docker/aliyunpan-sync/sync/
# 数据存放目录不要删除 以保证重新部署后数据还在
mkdir -p /volume1/docker/aliyunpan-sync/sync_drive/
安装部署
# 把aliyunpan-sync.yml这个文件放到当前目录执行安装命令
docker-compose -f aliyunpan-sync.yml up -d
# 推荐使用上传模式upload,实测大文件秒传没限制小文件也没问题,备份模式:upload(备份本地文件到云盘), download(备份云盘文件到本地), sync(双向同步备份)
ALIYUNPAN_SYNC_MODE=upload
总结

前段时间通过webdav协议实时备份,很多好友的账号被风控警告,

标签:文件,aliyunpan,云盘,备份,sync,ALIYUNPAN,Docker
From: https://www.cnblogs.com/ayjun/p/18083223

相关文章

  • 安装docker-compose
    道客的安装路径已经不能用了!使用官方安装脚本自动安装安装命令如下:curl-fsSLhttps://get.docker.com|bash-sdocker--mirrorAliyun也可以使用国内daocloud一键安装命令:curl-sSLhttps://get.daocloud.io/docker|shUbuntuDocker安装DockerEngine-Community......
  • 如何保证mysql的高可用性?我们用docker来做个实践。
    前言前段时间写了一篇关于mysql双主复制的文章,在这个的基础上我们来做个高可用的实践。前期准备,需要安装好docker、docker-compose的运行环境。mysql如何实现双主复制?我们用docker来个做实践。-CSDN博客一、安装haproxy1、创建haproxy目录,执行如下命令。mkdir-p/docke......
  • 在 Docker 容器中运行 ASP.NET Core 应用
    创建Docker支持生成Dockerfile文件在解决方案asp.netcore项目下右键添加Dockerfile支持、选择目标OS为Linux,生成Dockerfile文件#Seehttps://aka.ms/customizecontainertolearnhowtocustomizeyourdebugcontainerandhowVisualStudiousesthisDockerfiletobuild......
  • Ubuntu安装指定版本的docker
    Ubuntu安装指定版本的docker1、删除docker相关组件sudoapt-getautoremovedockerdocker-cedocker-enginedocker.iocontainerdrunc2、更新apt-getsudoapt-getupdate3、安装apt依赖包,用于通过HTTPS来获取仓库sudoapt-getinstallapt-transport-httpsca-cert......
  • sqlserver数据库备份文件还原
    将数据还原到新的测试库,通常涉及数据库备份文件的还原或数据迁移。这里提供一种通用的SQLServer数据库还原到测试库的方法:1.数据库备份文件还原:•如果你有一个数据库备份文件(.bak),你可以通过SQLServerManagementStudio(SSMS)或T-SQL命令将其还原到新的测试库。使用SSMS:•......
  • 轻量化部署工具Docker:参数化启动容器与数据卷挂载的综合应用
    dockerrun中的常见参数以mysql安装为例子dockerrun-d\--namemysql\-p3306:3306\-eTZ=Asia/Shanghai\-eMYSQL_ROOT_PASSWORD=123456\mysql-d表示后台执行–name容器的名字-p宿主机和容器映射的端口-e环境变量的设置此处设置了时区和密码......
  • 云服务器中docker部署nodejs项目
    1、部署项目前准备准备好了一台Linux云服务器或Ubuntu云服务器电脑安装好了xshell、xftp这两款软件已经开发完成了nodejs的项目2、Dockerfile文件的编写 在node项目中新建一个Dockerfile文件FROMdocker.io/node#在镜像容器中创建目录RUNmkdir-p/home/mbill......
  • 在Linux中,列出几种常用的Linux备份工具并说明各自的适用场景。
    在Linux中,有多种备份工具可用于不同场景下的数据保护和系统恢复,以下是一些常用的备份工具及其适用场景:tar:适用场景:tar是Linux中最基础的归档工具,广泛应用于创建文件和目录的打包备份。它可以将多个文件或整个目录结构整合成一个单一的.tar文件,并可选地配合gzip、bzip2或xz等......
  • # Docker安装使用Redis
    拉取最新版本redisdockerpullredis:7.2.4查看镜像dockerimages新建本地挂载配置文件夹(位置随意)1、创建文件夹(位置随意):data、confredis默认配置只能够本地连接、不能进行远程访问需要手动挂载redis配置文件mkdir-p/docker-root/redis_6379/datamkdir-p/d......
  • 从零开始写 Docker(七)---实现 mydocker commit 打包容器成镜像
    本文为从零开始写Docker系列第七篇,实现类似dockercommit的功能,把运行状态的容器存储成镜像保存下来。完整代码见:https://github.com/lixd/mydocker欢迎Star推荐阅读以下文章对docker基本实现有一个大致认识:核心原理:深入理解Docker核心原理:Namespace、Cgroups......