aiflow / backup.sh
hijnu's picture
Create backup.sh
64aac1f verified
raw
history blame
672 Bytes
#!/bin/bash
# 备份数据库到固定的文件名,覆盖上一次的备份
pg_dump -U "$POSTGRES_USER" -d "$POSTGRES_DB" -F c -b -v -f "/app/backups/backup.dump"
# 检查备份是否成功
if [ $? -eq 0 ]; then
echo "数据库备份成功,正在上传到 WebDAV..."
# 使用 curl 将备份文件上传到 WebDAV,使用基本身份验证
curl -T "/app/backups/backup.dump" \
--user "${WEBDAV_USER}:${WEBDAV_PASSWORD}" \
"${WEBDAV_URL}/backup.dump"
if [ $? -eq 0 ]; then
echo "备份文件成功上传到 WebDAV"
else
echo "备份文件上传到 WebDAV 失败"
fi
else
echo "数据库备份失败"
fi