Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Feature] Server image: map server.urls_to_pd and server.deploy_in_k8s from the environment, and stop editing conf files in place

未关闭
#3,286 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
48/100
Issue 类型
功能
描述清晰度
描述清楚
活跃度
活跃
技术栈
docker, helm, java, kubernetes

调研方向

Start with hugegraph-server/hugegraph-dist/docker/docker-entrypoint.sh, especially the existing HG_SERVER_* mappings and set_prop_encoded; then inspect the Helm wrapper in helm/hugegraph/templates/server-deployment.yaml and the read-only filesystem constraint in _helpers.tpl. The work includes adding both environment mappings and rendering effective configuration without modifying the image's conf/; verify the chart can rely on the entrypoint rather than its wrapper. The issue notes this is not proposed for 1.8.0.

由索引模型根据 Issue 内容生成。

描述

Feature Description (功能描述)

The Server image entrypoint maps a set of environment variables onto the conf files (docker-entrypoint.sh:161-172), but two keys a Server on PD needs in Kubernetes have no mapping:

  • server.urls_to_pd: the URL the Server registers with PD
  • server.deploy_in_k8s

The Helm chart therefore wraps the entrypoint and rewrites rest-server.properties itself before execing it (server-deployment.yaml:161-232).

The entrypoint also edits the conf files in place: set_prop_encoded runs sed -ri on the file under conf/ (docker-entrypoint.sh:65-66). The image's conf/ must be writable, so the chart refuses readOnlyRootFilesystem for Server (_helpers.tpl:838-839).

Proposal:

  1. Map HG_SERVER_URLS_TO_PD to server.urls_to_pd and HG_SERVER_DEPLOY_IN_K8S to server.deploy_in_k8s, next to the existing HG_SERVER_* mappings.
  2. Render the effective conf into a writable directory (a copy of conf/ under a data or temp path) and start the Server from it. The image's own conf/ is then never modified, and readOnlyRootFilesystem becomes possible once #3211 (non-root image) also lands. #3253 makes the conf path overridable, which this step could build on.

With both, the chart can drop its wrapper. The TODO at docker-entrypoint.sh:156 (from #3260) points here.

Not proposed for 1.8.0: the chart's wrapper covers it.

主要语言
Java
星标
3.2k
派生
640
平均合并
2 天 9 小时
30 天内合并 PR
26

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

apache/hugegraph 的其他 Issue

查看 apache/hugegraph 的全部 Issue

相似的 Issue

更多 Java Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。