[Feature] Server image: map server.urls_to_pd and server.deploy_in_k8s from the environment, and stop editing conf files in place
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- docker, helm, java, kubernetes
- Domain
- backend, databases, infrastructure
Research direction
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.
Written by the indexing model from the issue text.
Description
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.
- Dominant language
- Java
- Stars
- 3.2k
- Forks
- 641
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 38
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/hugegraph
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
apache/hugegraph#3231 · 1 comment ·
Maintainers usually reply within 1 day
-
[Bug] Prometheus metrics format bugMay be free again @cui2022 claimed this 61 days ago, and no pull request is open. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
apache/hugegraph#3142 · 7 comments ·
Maintainers usually reply within 1 day
-
[Bug] CI accepts obsolete PR targets after retargeting or force-pushMay be free again A pull request for this issue was closed without being merged. Open
Difficulty 3/5 1-2 days Newbie friendliness 25/100
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 45/100
Maintainers usually reply within 1 day
-
[Bug] Basic auth decodes the credential as ASCII and splits on every colon: a non-ASCII password answers 401, a password with ':' answers 400Possibly taken @arshilkxwork claimed this 3 days ago. Open
Difficulty 1/5 Under an hour Newbie friendliness 35/100
apache/hugegraph#3284 · 1 comment ·
Maintainers usually reply within 1 day
All issues in apache/hugegraph
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
objectionary/eo-graphs#80 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
enhancement good first issue
Difficulty 2/5 Half a day Newbie friendliness 66/100
apache/fineract-consumer-facing#175 ·
Maintainers usually reply within 1 day
-
[BUG] 订单:会员凭订单号即可取消其他会员的待付款订单(取消接口不校验订单归属)Possibly taken @dadiyang claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
macrozheng/mall#1016 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100