
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
backup-s3 是一个 Docker 镜像,用于定期将数据库(PostgreSQL 或 MySQL)和/或数据文件夹备份到 Amazon S3,并支持通过单个命令恢复备份。典型用例是备份使用 docker-compose 运行的应用(如 Wordpress)。v3.0 版本支持指定 PostgreSQL 客户端版本(v13 至 v15),v2.2 版本支持 S3 兼容端点。
v3.0-pg15, latestv3.0-pg14v3.0-pg13适用于需要定期备份数据的 Docker 应用,特别是使用 docker-compose 部署的 Web 应用(如 Wordpress、博客系统、小型业务系统等),需将数据库和文件数据安全存储到 S3 或 S3 兼容存储服务的场景。
在 docker-compose 文件中添加 backup-s3 服务。以下是备份 Wordpress 容器的示例:
yamlbackup: image: hleroy/backup-s3 init: true # 启用更快的容器终止 volumes: - wordpress:/var/www/html # 需要备份的卷 environment: # 提供环境变量(S3 密钥等) BACKUP_ENABLED: yes # 非空值即可启用备份 # S3 设置 S3_REGION: eu-central-1 S3_BUCKET: my-bucket S3_ACCESS_KEY_ID: access_key_id S3_SECRET_ACCESS_KEY: secret_access_key # S3_ENDPOINT_URL: # 可选:仅使用 S3 兼容端点时需要,如 https://s3.fr-par.scw.cloud # 数据库设置 DB_ENGINE: mysql DB_NAME: wordpress DB_USER: wordpress DB_PASS: wordpress DB_HOST: mysql DB_PORT: 5432 # 数据路径 DATA_PATH: '/var/www/html' # 根据需求自定义 # Cron 调度 CRON_SCHEDULE: '0 0 * * *' # 每天午夜执行
必选变量
yes、true)。若省略,容器以代码 0 退出。eu-central-1)。可选变量
https://s3.fr-par.scw.cloud。mysql 或 postgres。若省略,不执行数据库备份;若指定但缺少其他数据库设置,容器以代码 1 退出。/path1:/path2)。若省略,不执行数据备份。0 0 * * *(每天午夜)。可使用 crontab.guru 生成自定义表达式。定时备份
启动 Compose 应用后,备份将按 CRON_SCHEDULE 自动执行。备份文件名格式:时间戳.随机字符串.tgz(如 2020-04-22T00:00:01Z.87793a5e1556e0ff8a8b528328fab4ad.tgz)。
立即备份
执行以下命令触发立即备份:
bashdocker-compose run --rm backup no-cron
恢复备份
执行以下命令恢复指定备份(需提供不带扩展名的备份文件名):
bashdocker-compose run --rm backup restore BACKUP_FILENAME
示例(恢复 2020-04-22T00:00:01Z.87793a5e1556e0ff8a8b528328fab4ad.tgz):
bashdocker-compose run --rm backup restore 2020-04-22T00:00:01Z.87793a5e1556e0ff8a8b528328fab4ad
仓库提供 Wordpress 的完整 docker-compose 示例(docker-compose-wp-example.yml),步骤如下:
docker-compose-wp-example.yml,填写 S3 区域、存储桶和凭证。docker-compose -f docker-compose-wp-example.yml up -d。docker-compose -f docker-compose-wp-example.yml logs --follow(每 15 分钟执行一次)。docker-compose -f docker-compose-wp-example.yml run --rm backup no-cron。docker-compose -f docker-compose-wp-example.yml run --rm backup restore BACKUP_FILENAME。启用 Amazon S3 Block Public Access 功能,防止备份被公开访问。
为避免***者删除备份,创建 IAM 策略仅授权 put 和 get 操作(禁止 list)。示例策略:
json{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::your-bucket-1/*", "arn:aws:s3:::your-bucket-2/*", "arn:aws:s3:::your-bucket-3/*" ] } }
备份文件名包含随机字符串,即使容器被入侵,***者也难以猜测文件名。结合限制 S3 权限(仅 put 和 get),可防止覆盖旧备份。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




来自真实用户的反馈,见证轩辕镜像的优质服务