如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
JanusGraph是一个可扩展图数据库,优化用于存储和查询包含数千亿顶点和边的图,分布在多机集群中。
JanusGraph概述
商标说明:本软件列表由Bitnami打包。所提及的 respective 商标归各自公司所有,使用这些商标并不意味着任何关联或认可。
consolehelm install my-release oci://registry-1.docker.io/bitnamicharts/janusgraph
如需在生产环境使用JanusGraph,可尝试VMware Tanzu Application Catalog,即Bitnami目录的商业版。
从2025年8月28日开始,Bitnami将升级其公共目录,在新的Bitnami安全镜像计划下提供精选的强化、安全聚焦镜像。作为过渡的一部分:
这些变更旨在通过推广软件供应链完整性和最新部署的最佳实践,提升所有Bitnami用户的安全态势。更多详情,请访问https://github.com/bitnami/containers/issues/83267%E3%80%82
此chart使用Helm包管理器在Kubernetes集群上引导https://github.com/bitnami/containers/tree/main/bitnami/janusgraph%E9%83%A8%E7%BD%B2%E3%80%82
要安装版本名为my-release的chart:
consolehelm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/janusgraph
注意:需将占位符
REGISTRY_NAME和REPOSITORY_NAME替换为Helm chart仓库和仓库名称的引用。例如,对于Bitnami,需使用REGISTRY_NAME=registry-1.docker.io和REPOSITORY_NAME=bitnamicharts。
该命令使用默认配置在Kubernetes集群上部署JanusGraph。参数部分列出了安装过程中可配置的参数。
提示:使用
helm list列出所有版本
要卸载/删除my-release部署:
consolehelm delete my-release
该命令将移除与chart关联的所有Kubernetes组件并删除版本。
强烈建议在生产环境中使用不可变标签,确保部署不会因同一标签更新为不同镜像而自动变更。
若主容器有新版本、重大变更或严重漏洞,Bitnami将发布更新chart。
通过设置metrics.enabled=true,可将此chart与Prometheus集成,在所有pod中部署带有https://github.com/prometheus/jmx_exporter%E7%9A%84sidecar%E5%AE%B9%E5%99%A8%E5%92%8C%60metrics%60%E6%9C%8D%E5%8A%A1%EF%BC%8C%E8%AF%A5%E6%9C%8D%E5%8A%A1%E5%8C%85%E5%90%AB%E8%87%AA%E5%8A%A8%E8%A2%ABPrometheus%E6%8A%93%E5%8F%96%E7%9A%84%E5%BF%85%E8%A6%81%E6%B3%A8%E8%A7%A3%E3%80%82
Prometheus要求
需安装Prometheus或Prometheus Operator才能实现集成。可安装https://github.com/bitnami/charts/tree/main/bitnami/prometheus%E6%88%96https://github.com/bitnami/charts/tree/main/bitnami/kube-prometheus%E4%BB%A5%E5%9C%A8%E9%9B%86%E7%BE%A4%E4%B8%AD%E5%BF%AB%E9%80%9F%E9%83%A8%E7%BD%B2%E5%8F%AF%E7%94%A8%E7%9A%84Prometheus%E3%80%82
与Prometheus Operator集成
此chart可部署ServiceMonitor对象以集成Prometheus Operator安装。需设置metrics.serviceMonitor.enabled=true。确保集群中已安装Prometheus Operator的CustomResourceDefinitions,否则将报错:
textno matches for kind "ServiceMonitor" in version "monitoring.coreos.com/v1"
安装https://github.com/bitnami/charts/tree/main/bitnami/kube-prometheus%E4%BB%A5%E8%8E%B7%E5%8F%96%E5%BF%85%E8%A6%81%E7%9A%84CRD%E5%92%8CPrometheus Operator。
可配置JanusGraph连接外部存储后端(而非在集群内安装),常见原因包括使用托管数据库服务或为所有应用共享公共数据库服务器。通过storageBackend.external参数指定外部数据库凭证,并通过storageBackend.cassandra.enabled选项禁用Cassandra安装。示例如下:
consolestorageBackend.cassandra.enabled=false storageBackend.external.backend=<your_backend_type> storageBackend.external.hostname=<your_backend_host> storageBackend.external.port=<your_backend_port> #仅在需要时配置认证# storageBackend.external.username=<your_backend_username> storageBackend.external.existingSecret=<包含密码的密钥> storageBackend.external.existingSecretPasswordKey=<包含密码的密钥键名>
可配置JanusGraph连接外部索引后端。通过indexBackend.external参数指定外部索引后端凭证,示例如下:
consoleindexBackend.external.backend=<your_backend_type> indexBackend.external.hostname=<your_backend_host> indexBackend.external.port=<your_backend_port>
要在Kubernetes上备份和恢复Helm chart部署,需使用Velero(Kubernetes备份/恢复工具)备份源部署的持久卷,并将其附加到新部署。此指南提供了使用Velero的说明。
如需添加额外环境变量(用于高级操作,如自定义初始化脚本),可使用extraEnvVars属性:
yamlextraEnvVars: - name: LOG_LEVEL value: error
或者,可使用包含环境变量的ConfigMap或Secret。为此,使用extraEnvVarsCM或extraEnvVarsSecret值。
如需在JanusGraph所在pod中添加额外容器(如额外指标或日志导出器),可通过sidecars参数定义:
yamlsidecars: - name: your-image-name image: your-image imagePullPolicy: Always ports: - name: portname containerPort: 1234
若这些sidecar容器导出额外端口,可通过service.extraPorts参数(如可用)添加额外端口定义,示例如下:
yamlservice: extraPorts: - name: extraPort port: 11311 targetPort: 11311
注意:此Helm chart已包含Prometheus导出器的sidecar容器(如适用)。因此,
sidecars参数仅用于添加额外sidecar容器。
可通过affinity参数设置自定义亲和性。有关Pod亲和性的更多信息,请参阅kubernetes文档。
作为替代方案,可使用https://github.com/bitnami/charts/tree/main/bitnami/common#affinities chart提供的pod亲和性、pod反亲和性和节点亲和性预设配置。为此,设置podAffinityPreset、podAntiAffinityPreset或nodeAffinityPreset参数。
| 名称 | 描述 | 值 |
|---|---|---|
global.imageRegistry | 全局Docker镜像仓库 | "" |
global.imagePullSecrets | 全局Docker仓库密钥名称数组 | [] |
global.defaultStorageClass | 持久卷的全局默认StorageClass | "" |
global.storageClass | 已弃用:使用global.defaultStorageClass代替 | "" |
global.security.allowInsecureImages | 允许跳过镜像验证 | false |
global.compatibility.openshift.adaptSecurityContext | 调整部署的securityContext以兼容OpenShift restricted-v2 SCC:移除runAsUser、runAsGroup和fsGroup,让平台使用允许的默认ID。可能值:auto(检测到OpenShift集群时应用)、force(始终应用)、disabled(不应用) | auto |
| 名称 | 描述 | 值 |
|---|---|---|
kubeVersion | 覆盖Kubernetes版本 | "" |
apiVersions | 覆盖.Capabilities报告的Kubernetes API版本 | [] |
nameOverride | 部分覆盖common.names.name的字符串 | "" |
fullnameOverride | 完全覆盖common.names.fullname的字符串 | "" |
namespaceOverride | 完全覆盖common.names.namespace的字符串 | "" |
commonLabels | 添加到所有部署对象的标签 | {} |
commonAnnotations | 添加到所有部署对象的注解 | {} |
clusterDomain | Kubernetes集群域名 | cluster.local |
extraDeploy | 随发布一起部署的额外对象数组 | [] |
diagnosticMode.enabled | 启用诊断模式(禁用所有探针并覆盖命令) | false |
diagnosticMode.command | 覆盖部署中所有容器的命令 | ["sleep"] |
diagnosticMode.args | 覆盖部署中所有容器的参数 | ["infinity"] |
storageBackend.usePasswordFiles | 将凭证挂载为文件而非环境变量 | true |
storageBackend.cassandra.enabled | 使用Apache Cassandra子chart作为存储后端 | true |
storageBackend.berkeleyje.enabled | 使用BerkeleyDB(本地)作为存储后端 | false |
storageBackend.berkeleyje.directory | BerkeleyDB数据路径 | /bitnami/janusgraph/data/storage |
storageBackend.external.backend | 外部存储后端类型 | "" |
storageBackend.external.hostname | 外部存储后端主机名 | "" |
storageBackend.external.port | 外部存储后端端口 | "" |
storageBackend.external.username | 存储后端认证用户名(如需) | "" |
storageBackend.external.existingSecret | 包含外部存储后端密码的现有密钥(如需) | "" |
storageBackend.external.existingSecretPasswordKey | 包含存储后端密码的现有密钥键名 | "" |
indexBackend.lucene.enabled | 使用Lucene(本地)作为索引管理后端 | false |
indexBackend.lucene.directory | Lucene数据路径 | /bitnami/janusgraph/data/index |
indexBackend.external.backend | 外部索引后端类型 | "" |
indexBackend.external.hostname | 外部索引后端主机名 | "" |
indexBackend.external.port | 外部索引后端端口 | "" |
cache.enabled | 启用JanusGraph缓存功能 | true |
existingConfigmap | 包含JanusGraph自定义配置的现有ConfigMap名称 | "" |
extraJanusgraphProperties | 附加到janusgraph.properties配置文件末尾的额外配置 | "" |
janusgraphProperties | 覆盖janusgraph.properties文件内容 | "" |
javaOptions | JanusGraph执行的Java选项 | "" |
image.registry | JanusGraph镜像仓库 | REGISTRY_NAME |
image.repository | JanusGraph镜像仓库路径 | REPOSITORY_NAME/janusgraph |
image.digest | JanusGraph镜像摘要(格式sha256:aa....,设置后会覆盖标签,建议使用不可变标签) |
注意:此chart的README超出DockerHub 25000字符限制,已被截断。完整README可查看https://github.com/bitnami/charts/blob/main/bitnami/janusgraph/README.md
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务