本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

本镜像为 Apache Jena Fuseki 的 Docker 封装,包含 SeCo 扩展,灵感源自 stain/jena-fuseki。
Docker Hub 地址:secoresearch/fuseki
主要用途:提供基于 TDB 的 RDF 数据存储与查询服务,支持 SPARQL 1.1 端点、文本索引、持久化存储及 SHACL 验证等功能,适用于构建语义数据服务或作为 RDF 数据集的分发载体。
ds 数据集,使用 TDB 存储引擎,集成 Lucene 文本索引tdb:unionDefaultGraph=true,支持默认图查询匹配所有命名图的并集(默认图本身除外)tdbloader、textindexer、tdbstats 等脚本,支持批量加载 RDF 数据http://localhost:3030,管理员密码通过 ADMIN_PASSWORD 环境变量设置tdb:unionDefaultGraph=true:默认图查询匹配所有命名图的并集(注意:存储的默认图不属于此并集,需通过 <urn:x-arq:DefaultGraph> 显式访问)QUERY_TIMEOUT 环境变量调整(单位:毫秒)http://localhost:3030/ds/sparql(支持 SELECT/ASK/CONSTRUCT/DESCRIBE)http://localhost:3030/ds/data(支持 RDF 数据读取)通过环境变量启用(详见「环境变量配置」):
http://localhost:3030/ds/update(支持 INSERT/DELETE 操作)http://localhost:3030/ds/data(支持 RDF 数据写入)http://localhost:3030/ds/shacl(支持 SHACL 约束验证)容器内置 tdbloader、textindexer、tdbstats 脚本,用于将 RDF 数据加载到 TDB 模型。示例可参考 congress-legislators 数据集的 Dockerfile。
默认情况下,容器删除后数据会丢失,可通过以下方式实现持久化:
挂载 /fuseki-base/databases 目录至宿主机,适用于需动态更新数据或保持镜像轻量化的场景:
# 示例:绑定宿主机 ./fuseki-data 目录到容器数据库目录 docker run ... --mount type=bind,source="$(pwd)"/fuseki-data,target=/fuseki-base/databases ...
基于本镜像构建新镜像,在构建阶段加载数据,适用于静态、只读数据集分发:
FROM secoresearch/fuseki # 复制 RDF 数据到镜像 COPY data.rdf /data/ # 使用 tdbloader 加载数据到 TDB RUN tdbloader --loc /fuseki-base/databases/ds /data/data.rdf
| 环境变量 | 作用 | 取值范围 | 默认值 |
|---|---|---|---|
ADMIN_PASSWORD | 管理员密码(必填) | 字符串 | 无 |
ENABLE_DATA_WRITE | 启用图存储端点写权限 | true/false | false |
ENABLE_UPDATE | 启用 SPARQL 更新端点 | true/false | false |
ENABLE_SHACL | 启用 SHACL 验证端点 | true/false | false |
QUERY_TIMEOUT | 查询超时时间(毫秒) | 正整数 | 60000(60秒) |
USE_SYSTEM_CA_CERTS | 使用系统 CA 证书(用于 HTTPS 访问) | 空值/1(启用) | 空值(禁用) |
docker build --squash -t secoresearch/fuseki .
docker run --rm -it -p 3030:3030 --name fuseki \ -e ADMIN_PASSWORD=your_secure_password \ -e ENABLE_DATA_WRITE=true \ -e ENABLE_UPDATE=true \ -e QUERY_TIMEOUT=30000 \ --mount type=bind,source="$(pwd)"/fuseki-data,target=/fuseki-base/databases \ secoresearch/fuseki
# 创建本地目录 mkdir fuseki-data fuseki-configuration # 复制默认配置文件并修改(按需启用端点) cp -p assembler.ttl fuseki-configuration/ # 运行容器,挂载数据和配置目录 docker run --rm -it -p 3030:3030 --name fuseki \ -e ADMIN_PASSWORD=your_secure_password \ --mount type=bind,source="$(pwd)"/fuseki-data,target=/fuseki-base/databases \ --mount type=bind,source="$(pwd)"/fuseki-configuration,target=/fuseki-base/configuration \ secoresearch/fuseki
version: '3' services: fuseki: image: secoresearch/fuseki ports: - "3030:3030" environment: - ADMIN_PASSWORD=your_secure_password - ENABLE_UPDATE=true - QUERY_TIMEOUT=60000 volumes: - ./fuseki-data:/fuseki-base/databases - ./fuseki-configuration:/fuseki-base/configuration restart: unless-stopped
若在 OpenShift 中以非 root 用户运行,需确保数据目录权限:
# 在自定义 Dockerfile 中添加(构建阶段) RUN chgrp -R 0 $FUSEKI_BASE \ && chmod -R g+rwX $FUSEKI_BASE
Note:若通过绑定挂载自定义 assembler.ttl,不建议使用环境变量(如 ENABLE_DATA_WRITE)修改端点权限,可能导致文件权限错误。此时应直接编辑 assembler.ttl 配置端点。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429