
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!https://raw.githubusercontent.com/CLARIAH/grlc/master/src/static/grlc_logo_01.png
grlc是一个轻量级服务器,可将SPARQL查询(存储在GitHub仓库、本地文件系统或URL中)自动转换为Linked Data Web API。它允许用户无需了解SPARQL即可通过Web API访问关联数据,提供Swagger UI风格的API文档,支持多种查询位置和丰富的装饰器功能,实现关联数据的通用访问。
grlc支持从三种位置加载查询集合,所有位置类型均生成相同格式的API。
从GitHub仓库
API路径:http://grlc-server/api-git/<user>/<repo>
通过GitHub用户名(<user>)和仓库名(<repo>)指定仓库,例如:
http://grlc.io/api-git/CLARIAH/grlc-queries/
支持功能:
http://grlc-server/api-git/<user>/<repo>/commit/<sha>http://grlc-server/api-git/<user>/<repo>/subdir/<subdir>从本地存储
API路径:http://grlc-server/api-local/
从grlc服务器运行所在机器的本地目录加载查询,目录位置通过配置文件设置。本地目录中可包含local-api-config.ini配置文件:
ini[repo_info] repo_title = API标题 api_description = API描述 contact_name = 联系人 contact_url = 联系URL licence_url = 许可证URL
从规范文件
API路径:http://grlc-server/api-url/?specUrl=<specUrl>
从Web上的YAML规范文件加载查询,例如:
http://grlc.io/api-url?specUrl=https://raw.githubusercontent.com/CLARIAH/grlc-queries/master/urls.yml
规范文件语法:
yamltitle: API标题 description: API描述 contact: name: 联系人名称 url: 联系人URL licence: 许可证URL queries: - https://example.com/query1.rq - https://example.com/query2.rq
<API-path>/swagger获取API的Swagger规范调用API端点时,grlc会结合参数和装饰器执行SPARQL查询,结果以rdflib.query.QueryResult的JSON表示返回。指定SPARQL端点的方式:
sparql_endpointendpoint参数:http://grlc.io/user/repo/query?endpoint=http://sparql-endpoint/#+ endpoint:装饰器endpoint.txt文件(单行包含端点URL)装饰器以#+ 开头,作为SPARQL查询注释添加,支持以下类型:
summary
为API操作添加摘要,显示在Swagger UI中:
sparql#+ summary: 查询摘要说明
description
为API操作添加详细描述:
sparql#+ description: 这是查询的详细描述文本
endpoint
指定查询使用的SPARQL端点:
sparql#+ endpoint: http://example.com/sparql
pagination
启用结果分页,指定每页数量:
sparql#+ pagination: 100
method
指定HTTP请求方法(GET/POST):
sparql#+ method: POST
tags
为操作添加标签,用于在Swagger UI中分组:
sparql#+ tags: #+ - 标签1 #+ - 标签2
defaults
设置参数默认值:
sparql#+ defaults: #+ - param_name: default_value
enumerate
为参数提供枚举值(在Swagger UI中显示为下拉菜单):
sparql#+ enumerate: #+ - var1: #+ - value1 #+ - value2
endpoint_in_url
控制是否允许在URL中指定endpoint参数:
sparql#+ endpoint_in_url: False
transform
使用SPARQLTransformer语法转换JSON响应结构:
sparql#+ transform: { #+ "key": "?p", #+ "value": "?o", #+ "$anchor": "key" #+ }
bashdocker run -it --rm -p 8088:80 docker.xuanyuan.run/clariah/grlc
bashdocker run -it --rm -p 8088:80 \ -e GRLC_SERVER_NAME=grlc.io \ -e GRLC_GITHUB_ACCESS_TOKEN=your_github_token \ -e GRLC_SPARQL_ENDPOINT=http://dbpedia.org/sparql \ -e DEBUG=true \ docker.xuanyuan.run/clariah/grlc
| 环境变量 | 说明 | 示例值 |
|---|---|---|
| GRLC_SERVER_NAME | 服务器名称 | grlc.io |
| GRLC_GITHUB_ACCESS_TOKEN | GitHub访问令牌(用于访问私有仓库) | ghp_xxxxxxxxxxxxxxxxxxxx |
| GRLC_SPARQL_ENDPOINT | 默认SPARQL端点 | [***] |
| DEBUG | 是否启用调试模式 | true/false |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务