ttionya / vaultwarden-backup

Backup vaultwarden (formerly known as bitwarden_rs) SQLite3/PostgreSQL/MySQL/MariaDB database by rclone. (Docker)
MIT License
998 stars 115 forks source link

关于使用坚果云webdav远程备份时,遇到的风控问题解决和提示 #100

Closed TaoRone closed 1 year ago

TaoRone commented 1 year ago

尊敬的大大~

使用大大您的备份docker三个月了,这段时间遇到个问题 当使用坚果云等webdav服务商时,如果同时并发过多,会遇到坚果云的风控,风控时备份程序会卡住,从而无法进行到后续的环节,有点纳闷这种单个压缩包为什么会引发坚果云的风控……该如何去解决它?

同时遇到风控后,备份程序无法继续,从而配置的邮件通知也无法进行,是否可以将这种情况也纳入到邮箱通知失败的范围内。

稍后我会将风控后的日志贴在下一楼

TaoRone commented 1 year ago

相关日志:

2========================================
DATA_DIR: /data
(DATA_CONFIG: /data/config.json
$DATA_RSAKEY: /data/rsa_key
-DATA_ATTACHMENTS: /data/attachments
!DATA_SENDS: /data/sends
2========================================
DB_TYPE: SQLITE
#DATA_DB: /data/db.sqlite3
2========================================
CRON: */30 * * * *
TRCLONE_REMOTE: BitwardenBackup:/#99WebDAV备份相关/BitwardenBackup/auto
RCLONE_GLOBAL_FLAG: 
ZIP_ENABLE: TRUE
ZIP_PASSWORD: 7 Chars
ZIP_TYPE: 7z
)BACKUP_FILE_DATE_FORMAT: %Y%m%d
BACKUP_KEEP_DAYS: 20
 MAIL_SMTP_ENABLE: TRUE
MAIL_TO: tr27@qq.com
!MAIL_WHEN_SUCCESS: TRUE
!MAIL_WHEN_FAILURE: TRUE
TIMEZONE: UTC
2========================================
?running the backup program at 2023-03-14 16:00:00 UTC
2========================================
DATA_DIR: /data
(DATA_CONFIG: /data/config.json
$DATA_RSAKEY: /data/rsa_key
-DATA_ATTACHMENTS: /data/attachments
!DATA_SENDS: /data/sends
2========================================
DB_TYPE: SQLITE
#DATA_DB: /data/db.sqlite3
2========================================
CRON: */30 * * * *
TRCLONE_REMOTE: BitwardenBackup:/#99WebDAV备份相关/BitwardenBackup/auto
RCLONE_GLOBAL_FLAG: 
ZIP_ENABLE: TRUE
ZIP_PASSWORD: 7 Chars
ZIP_TYPE: 7z
)BACKUP_FILE_DATE_FORMAT: %Y%m%d
BACKUP_KEEP_DAYS: 20
 MAIL_SMTP_ENABLE: TRUE
MAIL_TO: tr27@qq.com
!MAIL_WHEN_SUCCESS: TRUE
!MAIL_WHEN_FAILURE: TRUE
TIMEZONE: UTC
2========================================
�2023/03/14 16:00:05 Failed to create file system for "BitwardenBackup:/#99WebDAV备份相关/BitwardenBackup/auto": read metadata failed: Too many requests are received recently: BlockedTemporarily: 503 Service Unavailable
rstorage system connection failure [BitwardenBackup:/#99WebDAV备份相关/BitwardenBackup/auto]
�time="2023-03-14T16:00:05Z" level=error msg="error running command: exit status 1" iteration=0 job.command="bash /app/backup.sh" job.position=0 job.schedule="*/30 * * * *"
ttionya commented 1 year ago

这一步是尝试通过 rclone mkdir 创建文件夹,验证配置是否能正确连接到远端存储。它是在启动容器时做的,如果连接失败则使用非 0 退出码退出容器表示异常,用户在启动容器后应该确认容器正常工作,此时还没到备份那一步,所以不会被包含到邮件通知中。

这一步就挂了的话,我无法确定是因为有特殊字符或者其他原因,你可以尝试把 RCLONE_REMOTE_DIR 改成只有英文的路径。如果还是挂的,你可以手动执行 mkdir 操作,如果还是不行,建议你到 rclone 去提 issue。

docker run --rm -it \
  --mount type=volume,source=vaultwarden-rclone-data,target=/config/ \
  ttionya/vaultwarden-backup:latest \
  rclone mkdir "BitwardenBackup:/#99WebDAV备份相关/BitwardenBackup/auto"
TaoRone commented 1 year ago

这一步是尝试通过 rclone mkdir 创建文件夹,验证配置是否能正确连接到远端存储。它是在启动容器时做的,如果连接失败则使用非 0 退出码退出容器表示异常,用户在启动容器后应该确认容器正常工作,此时还没到备份那一步,所以不会被包含到邮件通知中。

这一步就挂了的话,我无法确定是因为有特殊字符或者其他原因,你可以尝试把 RCLONE_REMOTE_DIR 改成只有英文的路径。如果还是挂的,你可以手动执行 mkdir 操作,如果还是不行,建议你到 rclone 去提 issue。

docker run --rm -it \
  --mount type=volume,source=vaultwarden-rclone-data,target=/config/ \
  ttionya/vaultwarden-backup:latest \
  rclone mkdir "BitwardenBackup:/#99WebDAV备份相关/BitwardenBackup/auto"

谢谢您!我这就尝试!另外请教个基础知识……类似大大您这样的容器,如何在不修改cron的基础上让docker立即执行作为测试……docker exec -it vaultwarden_backup /app/entrypoint.sh 好像不行…………

找到了,是docker exec -it 2c210906f612 /app/backup.sh !

TaoRone commented 1 year ago

已解决这个问题:

过程如下:

感谢大大的帮助!