
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Hasura Auth 是专为 Hasura 设计的认证服务,提供完整的用户认证与授权解决方案。该服务深度集成 Hasura 生态,支持多种登录方式,通过 JWT 令牌管理用户会话,并将用户数据存储在 PostgreSQL 中,可通过 GraphQL 接口访问。主要用于为基于 Hasura 的 GraphQL 应用提供安全、灵活的用户认证系统,简化用户管理、权限控制及会话管理流程。
Hasura Auth 适用于以下场景:
1. 使用 docker run 部署
bashdocker run -d \ --name hasura-auth \ -p 4000:4000 \ -e DATABASE_URL=postgresql://user:password@postgres:5432/hasura_auth \ -e HASURA_GRAPHQL_ENDPOINT=http://hasura:8080/v1/graphql \ -e JWT_SECRET='{"type":"HS256","key":"your-256-bit-secret-key"}' \ -e SMTP_HOST=smtp.example.com \ -e SMTP_PORT=587 \ -e SMTP_USER=user@example.com \ -e SMTP_PASSWORD=smtp-password \ -e EMAIL_FROM=noreply@example.com \ nhost/hasura-auth:2.2.1
2. 使用 docker-compose 部署
创建 docker-compose.yml 文件:
yamlversion: '3.8' services: postgres: image: postgres:14 environment: POSTGRES_USER: user POSTGRES_PASSWORD: password POSTGRES_DB: hasura_auth volumes: - postgres_data:/var/lib/postgresql/data hasura: image: hasura/graphql-engine:v2.28.0 ports: - "8080:8080" environment: HASURA_GRAPHQL_DATABASE_URL: postgresql://user:password@postgres:5432/hasura_auth HASURA_GRAPHQL_ENABLE_CONSOLE: "true" HASURA_GRAPHQL_ADMIN_SECRET: hasura-admin-secret HASURA_GRAPHQL_JWT_SECRET: '{"type":"HS256","key":"your-256-bit-secret-key"}' hasura-auth: image: nhost/hasura-auth:2.2.1 ports: - "4000:4000" environment: DATABASE_URL: postgresql://user:password@postgres:5432/hasura_auth HASURA_GRAPHQL_ENDPOINT: http://hasura:8080/v1/graphql HASURA_GRAPHQL_ADMIN_SECRET: hasura-admin-secret JWT_SECRET: '{"type":"HS256","key":"your-256-bit-secret-key"}' SMTP_HOST: smtp.example.com SMTP_PORT: 587 SMTP_USER: user@example.com SMTP_PASSWORD: smtp-password EMAIL_FROM: noreply@example.com depends_on: - postgres - hasura volumes: postgres_data:
启动服务:
bashdocker-compose up -d
Hasura Auth 的行为通过环境变量配置,以下是核心参数说明:
必选环境变量
| 变量名 | 描述 | 示例值 |
|---|---|---|
DATABASE_URL | PostgreSQL 数据库连接 URL,用于存储用户数据 | postgresql://user:password@postgres:5432/db |
HASURA_GRAPHQL_ENDPOINT | Hasura GraphQL 引擎的 HTTP 端点 | http://hasura:8080/v1/graphql |
JWT_SECRET | JWT 签名密钥,JSON 格式,包含算法和密钥 | {"type":"HS256","key":"your-256-bit-secret"} |
HASURA_GRAPHQL_ADMIN_SECRET | Hasura 管理员密钥,用于 Hasura Auth 调用 Hasura 管理 API | hasura-admin-secret |
可选环境变量(邮件配置)
| 变量名 | 描述 | 示例值 |
|---|---|---|
SMTP_HOST | SMTP 服务器地址 | smtp.example.com |
SMTP_PORT | SMTP 服务器端口 | 587 |
SMTP_USER | SMTP 认证用户名 | user@example.com |
SMTP_PASSWORD | SMTP 认证密码 | smtp-password |
EMAIL_FROM | 邮件发送者地址 | noreply@example.com |
SMTP_SECURE | 是否启用 TLS(true/false) | true |
可选环境变量(安全配置)
| 变量名 | 描述 | 示例值 |
|---|---|---|
CHECK_PWNED_PASSWORDS | 是否启用 Pwned Passwords 检查(true/false) | true |
JWT_EXPIRES_IN | JWT 访问令牌过期时间(秒) | 900(15分钟) |
REFRESH_TOKEN_EXPIRES_IN | 刷新令牌过期时间(秒) | 604800(7天) |
本项目采用 MIT 许可证开源。详情参见 https://github.com/nhost/hasura-auth/blob/main/LICENSE%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务