
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
mongodb-awesome-backup是一个脚本集合,用于将MongoDB数据库备份到Amazon S3或Google Cloud Storage。它支持设置自定义S3端点,可用于DigitalOcean Spaces等S3兼容服务,提供灵活的云存储备份解决方案。
AWS认证
GCP认证
-v ~:/mab)以保存认证凭据(.boto文件)使用以下命令执行一次性备份:
bashdocker run --rm \ -e AWS_ACCESS_KEY_ID=<您的IAM访问密钥ID> \ -e AWS_SECRET_ACCESS_KEY=<您的IAM密钥> \ [ -e GCP_SERVICE_ACCOUNT_KEY_JSON_PATH=<GCP服务账号密钥JSON文件路径> \ ] [ -e GCP_ACCESS_KEY_ID=<您的GCP访问密钥> \ ] [ -e GCP_SECRET_ACCESS_KEY=<您的GCP密钥> \ ] [ -e GCP_PROJECT_ID=<您的GCP项目ID> \ ] -e TARGET_BUCKET_URL=<目标存储桶URL ([s3://...|gs://...])> \ [ -e BACKUPFILE_PREFIX=<备份文件名前缀 (默认: "backup") \ ] [ -e MONGODB_URI=<目标MongoDB URI> \ ] [ -e MONGODB_HOST=<目标MongoDB主机 (默认: "mongo")> \ ] [ -e MONGODB_DBNAME=<目标数据库名称> \ ] [ -e MONGODB_USERNAME=<数据库登录用户名> \ ] [ -e MONGODB_PASSWORD=<数据库登录密码> \ ] [ -e MONGODB_AUTHDB=<认证数据库名称> \ ] [ -e AWSCLI_ENDPOINT_OPT=<S3端点URL (例如 https://fra1.digitaloceanspaces.com)> \ ] [ -v ~:/mab \ ] weseek/mongodb-awesome-backup
执行后,备份文件(格式:backup-YYYYMMdd.tar.bz2)将保存到目标存储桶。
设置CRONMODE=true并指定CRON_EXPRESSION以启用定时备份:
bashdocker run --rm \ -e AWS_ACCESS_KEY_ID=<您的IAM访问密钥ID> \ -e AWS_SECRET_ACCESS_KEY=<您的IAM密钥> \ [ -e GCP_SERVICE_ACCOUNT_KEY_JSON_PATH=<GCP服务账号密钥JSON文件路径> \ ] [ -e GCP_ACCESS_KEY_ID=<您的GCP访问密钥> \ ] [ -e GCP_SECRET_ACCESS_KEY=<您的GCP密钥> \ ] [ -e GCP_PROJECT_ID=<您的GCP项目ID> \ ] -e TARGET_BUCKET_URL=<目标存储桶URL ([s3://...|gs://...])> \ -e CRONMODE=true \ -e CRON_EXPRESSION=<Cron表达式 (例如 "0 4 * * *" 表示每天4:00执行)> \ [ -e BACKUPFILE_PREFIX=<备份文件名前缀 (默认: "backup") \ ] [ -e MONGODB_URI=<目标MongoDB URI> \ ] [ -e MONGODB_HOST=<目标MongoDB主机 (默认: "mongo")> \ ] [ -e MONGODB_DBNAME=<目标数据库名称> \ ] [ -e MONGODB_USERNAME=<数据库登录用户名> \ ] [ -e MONGODB_PASSWORD=<数据库登录密码> \ ] [ -e MONGODB_AUTHDB=<认证数据库名称> \ ] [ -e AWSCLI_ENDPOINT_OPT=<S3端点URL (例如 https://fra1.digitaloceanspaces.com)> \ ] [ -v ~:/mab \ ] weseek/mongodb-awesome-backup
使用restore命令从备份文件恢复数据库:
bashdocker run --rm \ -e AWS_ACCESS_KEY_ID=<您的IAM访问密钥ID> \ -e AWS_SECRET_ACCESS_KEY=<您的IAM密钥> \ [ -e GCP_SERVICE_ACCOUNT_KEY_JSON_PATH=<GCP服务账号密钥JSON文件路径> \ ] [ -e GCP_ACCESS_KEY_ID=<您的GCP访问密钥> \ ] [ -e GCP_SECRET_ACCESS_KEY=<您的GCP密钥> \ ] [ -e GCP_PROJECT_ID=<您的GCP项目ID> \ ] -e TARGET_BUCKET_URL=<目标存储桶URL ([s3://...|gs://...])> \ -e TARGET_FILE=<要恢复的S3或GS文件名> \ [ -e MONGODB_URI=<目标MongoDB URI> \ ] [ -e MONGODB_HOST=<目标MongoDB主机 (默认: "mongo")> \ ] [ -e MONGODB_DBNAME=<目标数据库名称> \ ] [ -e MONGODB_USERNAME=<数据库登录用户名> \ ] [ -e MONGODB_PASSWORD=<数据库登录密码> \ ] [ -e MONGODB_AUTHDB=<认证数据库名称> \ ] [ -e MONGORESTORE_OPTS=<mongorestore选项列表> \ ] [ -e AWSCLI_ENDPOINT_OPT=<S3端点URL (例如 https://fra1.digitaloceanspaces.com)> \ ] [ -v ~:/mab \ ] weseek/mongodb-awesome-backup restore
backup、prune、list命令必填变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
| AWS_ACCESS_KEY_ID | 您的IAM访问密钥ID | - |
| AWS_SECRET_ACCESS_KEY | 您的IAM密钥 | - |
| TARGET_BUCKET_URL | 目标存储桶URL(格式:[s3://...|gs://...],URL必须以'/'结尾) | - |
可选变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
| GCP_SERVICE_ACCOUNT_KEY_JSON_PATH | GCP服务账号密钥JSON文件路径 | - |
| GCP_ACCESS_KEY_ID | 您的GCP访问密钥 | - |
| GCP_SECRET_ACCESS_KEY | 您的GCP密钥 | - |
| GCP_PROJECT_ID | 您的GCP项目ID | - |
| BACKUPFILE_PREFIX | 备份文件名前缀 | "backup" |
| MONGODB_URI | 目标MongoDB URI(例如mongodb://mongodb?replicaSet=rs0)。设置后,其他MONGODB_*变量将被忽略 | - |
| MONGODB_HOST | 目标MongoDB主机 | "mongo" |
| MONGODB_DBNAME | 目标数据库名称 | - |
| MONGODB_USERNAME | 数据库登录用户名 | - |
| MONGODB_PASSWORD | 数据库登录密码 | - |
| MONGODB_AUTHDB | 认证数据库名称 | - |
| CRONMODE | 设为"true"时启用cron模式,脚本将按CRON_EXPRESSION指定的时间执行 | "false" |
| CRON_EXPRESSION | Cron表达式(例如"0 4 * * *"表示每天4:00执行) | - |
| AWSCLI_ENDPOINT_OPT | 自定义S3端点URL(如使用DigitalOcean Spaces等S3兼容服务,例如https://fra1.digitaloceanspaces.com),未设置则使用Amazon S3标准端点 | - |
| AWSCLIOPT | 传递给aws命令的其他选项 | - |
| GCSCLIOPT | 传递给gsutil命令的其他选项 | - |
| HEALTHCHECKS_URL | 备份成功后调用的URL(例如[***] | - |
restore命令必填变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
| AWS_ACCESS_KEY_ID | 您的IAM访问密钥ID | - |
| AWS_SECRET_ACCESS_KEY | 您的IAM密钥 | - |
| TARGET_BUCKET_URL | 目标存储桶URL(格式:[s3://...|gs://...],URL必须以'/'结尾) | - |
| TARGET_FILE | 要恢复的S3或GS文件名 | - |
可选变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
| GCP_SERVICE_ACCOUNT_KEY_JSON_PATH | GCP服务账号密钥JSON文件路径 | - |
| GCP_ACCESS_KEY_ID | 您的GCP访问密钥 | - |
| GCP_SECRET_ACCESS_KEY | 您的GCP密钥 | - |
| GCP_PROJECT_ID | 您的GCP项目ID | - |
| MONGODB_URI | 目标MongoDB URI(例如mongodb://mongodb?replicaSet=rs0)。设置后,其他MONGODB_*变量将被忽略 | - |
| MONGODB_HOST | 目标MongoDB主机 | "mongo" |
| MONGODB_DBNAME | 从备份恢复的数据库名称 | - |
| MONGODB_USERNAME | 数据库登录用户名 | - |
| MONGODB_PASSWORD | 数据库登录密码 | - |
| MONGODB_AUTHDB | 认证数据库名称 | - |
| MONGORESTORE_OPTS | mongorestore命令的选项列表(例如--drop) | - |
| AWSCLI_ENDPOINT_OPT | 自定义S3端点URL(如使用DigitalOcean Spaces等S3兼容服务,例如https://fra1.digitaloceanspaces.com),未设置则使用Amazon S3标准端点 | - |
| AWSCLIOPT | 传递给aws命令的其他选项 | - |
| GCSCLIOPT | 传递给gsutil命令的其他选项 | - |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务