From 96d8375663dc25ead236352c59ec1a04be024749 Mon Sep 17 00:00:00 2001 From: Yuan Tang Date: Fri, 3 Jan 2025 11:47:10 -0600 Subject: [PATCH] Fix incorrect entrypoint for broken `llama stack run` (#706) This fixes the issue when using `llama stack run` by correctly specifying entrypoint: ``` LLAMA_STACK_DIR=. llama stack run /home/yutang/.llama/distributions/llamastack-vllm/vllm-run.yaml Using config file: /home/yutang/.llama/distributions/llamastack-vllm/vllm-run.yaml + command -v selinuxenabled + selinuxenabled + DOCKER_OPTS=' --security-opt label=disable' + mounts= + '[' -n . ']' ++ readlink -f . + mounts=' -v /home/yutang/repos/llama-stack:/app/llama-stack-source' + '[' -n '' ']' + version_tag=latest + '[' -n '' ']' + '[' -n . ']' + version_tag=dev + podman run --security-opt label=disable -it -p 5000:5000 -v /home/yutang/.llama/distributions/llamastack-vllm/vllm-run.yaml:/app/config.yaml -v /home/yutang/repos/llama-stack:/app/llama-stack-source localhost/distribution-vllm:dev python -m llama_stack.distribution.server.server --yaml-config /app/config.yaml --port 5000 usage: server.py [-h] [--yaml-config YAML_CONFIG] [--template TEMPLATE] [--port PORT] [--disable-ipv6] [--env ENV] server.py: error: unrecognized arguments: python -m llama_stack.distribution.server.server ++ error_handler 88 ++ echo 'Error occurred in script at line: 88' Error occurred in script at line: 88 ++ exit 1 ``` --------- Signed-off-by: Yuan Tang --- llama_stack/distribution/server/server.py | 7 ++++++- llama_stack/distribution/start_container.sh | 7 +++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/llama_stack/distribution/server/server.py b/llama_stack/distribution/server/server.py index e432cca4e..8c1e41dc0 100644 --- a/llama_stack/distribution/server/server.py +++ b/llama_stack/distribution/server/server.py @@ -239,7 +239,12 @@ def main(): "--template", help="One of the template names in llama_stack/templates (e.g., tgi, fireworks, remote-vllm, etc.)", ) - parser.add_argument("--port", type=int, default=5000, help="Port to listen on") + parser.add_argument( + "--port", + type=int, + default=int(os.getenv("LLAMASTACK_PORT", 5000)), + help="Port to listen on", + ) parser.add_argument( "--disable-ipv6", action="store_true", help="Whether to disable IPv6 support" ) diff --git a/llama_stack/distribution/start_container.sh b/llama_stack/distribution/start_container.sh index 34476c8e0..3b7b55b97 100755 --- a/llama_stack/distribution/start_container.sh +++ b/llama_stack/distribution/start_container.sh @@ -90,7 +90,6 @@ $DOCKER_BINARY run $DOCKER_OPTS -it \ $env_vars \ -v "$yaml_config:/app/config.yaml" \ $mounts \ - $docker_image:$version_tag \ - python -m llama_stack.distribution.server.server \ - --yaml-config /app/config.yaml \ - --port "$port" + --env LLAMASTACK_PORT=$port \ + --entrypoint='["python", "-m", "llama_stack.distribution.server.server", "--yaml-config", "/app/config.yaml"]' \ + $docker_image:$version_tag