
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该Docker镜像是一个轻量级、全功能的Azure Key Vault模拟器,专为开发和测试场景设计。它允许开发人员在本地环境中模拟Azure Key Vault的核心功能,无需依赖真实的Azure云资源或账户。通过支持Azure官方SDK客户端库,可直接复用现有代码连接模拟器,大幅降低开发环境配置复杂度,提高Azure Key Vault相关应用的开发测试效率。
标准启动命令
bashdocker run -d -p 8200:8200 --name keyvault-emulator [镜像名称]
-d:后台运行容器-p 8200:8200:端口映射(主机端口:容器端口),默认使用8200端口--name keyvault-emulator:指定容器名称,便于后续管理自定义端口配置
如需使用非默认端口(如8300):
bashdocker run -d -p 8300:8300 --name keyvault-emulator [镜像名称] --port 8300
数据持久化配置
通过挂载主机目录实现数据持久化:
bashdocker run -d -p 8200:8200 -v /host/data/path:/emulator/data --name keyvault-emulator [镜像名称] --storage /emulator/data
-v /host/data/path:/emulator/data:将主机目录/host/data/path挂载到容器内/emulator/data--storage /emulator/data:指定模拟器数据存储路径为容器内挂载目录创建docker-compose.yml文件:
yamlversion: '3.8' services: keyvault-emulator: image: [镜像名称] container_name: keyvault-emulator ports: - "8200:8200" # 端口映射 volumes: - ./kv-data:/emulator/data # 持久化数据到当前目录下kv-data文件夹 command: --storage /emulator/data --port 8200 # 启动参数 environment: - LOG_LEVEL=INFO # 日志级别:DEBUG/INFO/WARN/ERROR restart: unless-stopped # 容器退出时自动重启(除非手动停止)
启动服务:
bashdocker-compose up -d
.NET SDK连接
csharpusing Azure.Identity; using Azure.Security.KeyVault.Secrets; // 创建模拟器客户端(使用DefaultAzureCredential,禁用共享令牌缓存) var credential = new DefaultAzureCredential(new DefaultAzureCredentialOptions { ExcludeSharedTokenCacheCredential = true }); var client = new SecretClient(new Uri("http://localhost:8200"), credential); // 示例:添加并读取机密 await client.SetSecretAsync("test-secret", "secret-value"); var secret = await client.GetSecretAsync("test-secret"); Console.WriteLine($"机密值:{secret.Value.Value}");
Python SDK连接
pythonfrom azure.identity import DefaultAzureCredential from azure.keyvault.secrets import SecretClient # 创建模拟器客户端 credential = DefaultAzureCredential(exclude_shared_token_cache_credential=True) client = SecretClient(vault_url="http://localhost:8200", credential=credential) # 示例:添加并读取机密 client.set_secret("test-secret", "secret-value") secret = client.get_secret("test-secret") print(f"机密值:{secret.value}")
| 参数/环境变量 | 说明 | 默认值 | 配置方式 |
|---|---|---|---|
--port | 模拟器服务端口 | 8200 | 启动命令参数 |
--storage | 数据存储路径(容器内) | /tmp/keyvault | 启动命令参数 |
LOG_LEVEL | 日志输出级别 | INFO | 环境变量(-e LOG_LEVEL=DEBUG) |
MAX_CONCURRENT_REQUESTS | 最大并发请求数 | 100 | 环境变量(-e MAX_CONCURRENT_REQUESTS=200) |
注意:所有启动命令参数需放在镜像名称之后,如
docker run [镜像名称] --port 8300 --storage /data
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务