
ontotext/graphdb自GraphDB 10.0起,所有版本使用单一Docker镜像,每个版本对应独立标签,格式为<version>,版本号与数据库版本一致。使用限制取决于应用的许可证(免费版无许可证)。
例如,拉取GraphDB 11.0.1镜像:
consoledocker pull ontotext/graphdb:11.0.1
支持arm64和amd64架构,拉取时Docker会根据主机架构自动选择正确版本。
10.0以下版本标签分为两组:
<version>-ee(企业版)<version>-se(标准版)目前提供GraphDB 9.11.2-se和9.11.2-ee,拉取命令:
consoledocker pull ontotext/graphdb:9.11.2-se
或
consoledocker pull ontotext/graphdb:9.11.2-ee
GraphDB是企业级语义图数据库,符合W3C标准。语义图数据库(又称RDF三元组存储)为建模灵活、数据集成、关系探索及跨企业数据发布与消费等场景提供核心基础设施。
GraphDB是唯一支持大规模语义推理的三元组存储,可从现有事实创建新语义事实,经证实能实时处理海量负载、查询和推理。
更多信息及GraphDB Server等产品下载,请访问[***]
启动GraphDB实例简单直接:
consoledocker run -p 127.0.0.1:7200:7200 --name graphdb-instance-name -t ontotext/graphdb:tag
其中graphdb-instance-name为容器名称,tag为指定GraphDB版本的标签(见上文标签列表)。
启动后访问http://localhost:7200即可使用数据库。注意:10.0以下版本需许可证;10.0及以上版本默认以“免费模式”运行,功能有限。
使用docker exec命令可在容器内执行命令,获取bash shell:
consoledocker exec -it graphdb-instance-name bash
通过Docker容器日志查看GraphDB日志:
consoledocker logs graphdb-instance-name
实时监控日志:
consoledocker attach graphdb-instance-name
镜像支持在运行命令末尾传递自定义选项,例如指定全局缓存内存:
consoledocker run -p 127.0.0.1:7200:7200 --name graphdb-instance-name -t ontotext/graphdb:tag -Dgraphdb.global.page.cache=3G
重要提示:Docker容器中应用数据存储有多种方式,建议GraphDB用户熟悉以下选项:
推荐使用第二种方式,步骤如下:
/my/own/graphdb-home。consoledocker run -p 127.0.0.1:7200:7200 -v /my/own/graphdb-home:/opt/graphdb/home --name graphdb-instance-name -t ontotext/graphdb:tag
-v /my/own/graphdb-home:/opt/graphdb-home将主机/my/own/graphdb-home目录挂载为容器内/opt/graphdb/home,GraphDB默认在此写入数据文件、日志和工作文件。
SELinux注意事项:启用SELinux的主机可能需设置目录策略类型:
consolechcon -Rt svirt_sandbox_file_t /my/own/graphdb-home
使用标准版或企业版功能需向容器提供许可证,可通过Web界面手动添加,或以下两种自动化方式:
在主机执行:
consolemkdir -p data/conf cp <许可证路径> data/conf/graphdb.license
启动容器:
consoledocker run -p 127.0.0.1:7200:7200 -v data:/opt/graphdb/home --name graphdb-instance-name -t ontotext/graphdb:tag
创建Dockerfile:
dockerfileFROM ontotext/graphdb:tag RUN mkdir -p /opt/graphdb/home/conf COPY <主机许可证路径> /opt/graphdb/home/conf
构建并运行镜像。
运行集群模式需注意:
7300(默认RPC端口)graphdb.auth.token.secret属性提供集群密钥启动集群模式节点示例命令:
bashdocker run -d -p 7200:7200 -p 7300:7300 ontotext/graphdb:11.0.1 /opt/graphdb/dist/bin/graphdb -Dgraphdb.auth.token.secret=superSecretToken
使用外部代理启动集群:
bashdocker run -d -p 7200:7200 -p 7300:7300 --entrypoint /opt/graphdb/dist/bin/cluster-proxy ontotext/graphdb:11.0.1 -Dgraphdb.auth.token.secret=superSecretToken -g http://<主机名>:7200
说明:
/opt/graphdb/dist/bin/cluster-proxy脚本启动外部代理模式-g参数指定集群中GraphDB实例地址,一个实例地址即可自动发现其他节点graphdb.auth.token.secret与集群通信容器日志将显示GraphDB是否以代理模式启动及集群通信状态。
详见GraphDB外部代理文档。
此镜像官方支持Docker 1.13.1版本,旧版本(低至1.6)提供尽力支持。
升级Docker引擎请参考Docker安装文档。
镜像相关贡献与开发请访问GitHub仓库。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务