PostHog / PostHog/posthog

Make self-hosted auxiliary service image tags pinnable

Open
#88,752 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
39.9k
Forks
3.4k
Avg merge
6h 51m
Merged PRs (30d)
232

Description

Feature request

Is your feature request related to a problem?

Self-hosted Compose files hardcode floating master or latest tags for auxiliary PostHog services. Operators can pin the main app image, but cannot override every auxiliary image family from .env without editing the Compose files.

Describe the solution you'd like

Make the existing auxiliary image tags configurable while preserving the current floating defaults:

  • keep the existing POSTHOG_NODE_TAG variable for Node services
  • add POSTHOG_LIVESTREAM_TAG for Livestream
  • add POSTHOG_RUST_TAG for the Rust services used by the hobby stack
  • use those variables in the Compose image references
  • add commented guidance to .env for new and existing hobby installations

When the variables are unset, the stack must continue to use the current master or latest tags. Operators may set only tags that actually exist in the corresponding registries.

Describe alternatives you've considered

Editing Compose files locally makes upgrades harder to reconcile. Automatically deriving every auxiliary tag from the app revision is not reliable because those images are published selectively and use different tag formats.

Additional context

Done means #88802 makes the auxiliary image families pinnable through Compose variables and documents the variables in the generated .env without changing the default deployment behavior.

This issue does not define an automatic app-to-component version manifest, publish missing images, verify registry tags, or guarantee that one revision exists for every auxiliary image.

Debug info
- [ ] PostHog Cloud, region and project ID: not applicable
- [x] PostHog Hobby self-hosted with `docker compose`, version/commit: source confirmed at e9f989346bdc6fdb17da84b5d1eedca399a6b00d
- [ ] PostHog self-hosted with Kubernetes (deprecated, see `Sunsetting Kubernetes support`), version/commit: not applicable

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the self-hosted Compose files to find auxiliary image references and the existing POSTHOG_NODE_TAG variable. Then locate the generated .env template and its guidance for hobby installations. Done means Livestream and Rust tags, alongside the existing Node tag, can be overridden while unset variables preserve the current master or latest defaults.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker-compose
Domain
devops
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.