[Feature] Server image: map server.urls_to_pd and server.deploy_in_k8s from the environment, and stop editing conf files in place
维护者通常 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 PDserver.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:
- Map
HG_SERVER_URLS_TO_PDtoserver.urls_to_pdandHG_SERVER_DEPLOY_IN_K8Stoserver.deploy_in_k8s, next to the existingHG_SERVER_*mappings. - 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 ownconf/is then never modified, andreadOnlyRootFilesystembecomes 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
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
apache/hugegraph 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 70/100
apache/hugegraph#3231 · 1 条评论 ·
维护者通常 1 天内回复
-
[Bug] Prometheus metrics format bug可能重新可做 @cui2022 于 59 天前认领,目前没有进行中的 PR。 未关闭bug
难度 2/5 1-3 小时 新手友好度 64/100
apache/hugegraph#3142 · 7 条评论 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 45/100
维护者通常 1 天内回复
-
[Bug] Basic auth decodes the credential as ASCII and splits on every colon: a non-ASCII password answers 401, a password with ':' answers 400可能已有人在做 @arshilkxwork 今天认领。 未关闭
难度 1/5 1 小时以内 新手友好度 35/100
apache/hugegraph#3284 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 4/5 3-5 天 新手友好度 30/100
维护者通常 1 天内回复
相似的 Issue
-
waiting-for-triage
难度 1/5 1 小时以内 新手友好度 72/100
spring-cloud/spring-cloud-openfeign#1443 ·
维护者通常 1 天内回复
-
难度 1/5 1-3 小时 新手友好度 84/100
ADORSYS-GIS/keycloak-oid4vp-plugin#221 ·
维护者通常 2 天内回复
-
status: team-only type: dependency-upgrade
难度 2/5 1-3 小时 新手友好度 65/100
spring-projects/spring-boot#52099 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 67/100
tchiotludo/akhq#3307 · 1 个 reaction ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 75/100
objectionary/jeo-maven-plugin#1885 ·
维护者通常 4 天内回复