fix: add /app/.venv/bin to PATH to support Kubernetes exec-style entrypoints #5315
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What does this PR address?
This PR fixes an issue where BentoML containers fail to start in Kubernetes when using an exec-style entrypoint like:
The failure occurs because the bentoml CLI binary is installed inside a virtual environment at /app/.venv/bin, which is not included in the default $PATH. While the binary is available interactively (e.g., via kubectl exec), it is not found during container startup using Kubernetes command: override.
This PR updates the Dockerfile generation logic to include /app/.venv/bin in the $PATH by injecting it through the bento__envs mechanism. This ensures that the Bento container works seamlessly with Kubernetes-style overrides.
Fixes
Fixes #5310
Before submitting:
guide on how to create a pull request.
pre-commit run -a
script has passed (instructions)?those accordingly? Here are documentation guidelines and tips on writting docs.