llama-stack/llama_stack/distribution
Ashwin Bharambe f8f2f7f9bb
feat: Add HTTPS serving option (#1000)
# What does this PR do?

Enables HTTPS option for Llama Stack. 

While doing so, introduces a `ServerConfig` sub-structure to house all
server related configuration (port, ssl, etc.)

Also simplified the `start_container.sh` entrypoint to simply be
`python` instead of a complex bash command line.

## Test Plan

Conda: 

Run:
```bash
$ llama stack build --template together
$ llama stack run --port 8322        # ensure server starts 

$ llama-stack-client configure --endpoint http://localhost:8322
$ llama-stack-client models list
```

Create a self-signed SSL key / cert pair. Then, using a local checkout
of `llama-stack-client-python`, change
https://github.com/meta-llama/llama-stack-client-python/blob/main/src/llama_stack_client/_base_client.py#L759
to add `kwargs.setdefault("verify", False)` so SSL verification is
disabled. Then:

```bash
$ llama stack run --port 8322 --tls-keyfile <KEYFILE> --tls-certfile <CERTFILE>
$ llama-stack-client configure --endpoint https://localhost:8322  # notice the `https`
$ llama-stack-client models list
```

Also tested with containers (but of course one needs to make sure the
cert and key files are appropriately provided to the container.)
2025-02-07 09:39:08 -08:00
..
routers Support sys_prompt behavior in inference (#937) 2025-02-03 23:35:16 -08:00
server feat: Add HTTPS serving option (#1000) 2025-02-07 09:39:08 -08:00
store Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
ui Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
utils Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
__init__.py API Updates (#73) 2024-09-17 19:51:35 -07:00
build.py Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
build_conda_env.sh feat: Add a new template for dell (#978) 2025-02-06 14:14:39 -08:00
build_container.sh Fix uv pip install timeout issue for PyTorch (#929) 2025-02-03 06:39:35 -08:00
build_venv.sh feat: Add a new template for dell (#978) 2025-02-06 14:14:39 -08:00
client.py Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
common.sh API Updates (#73) 2024-09-17 19:51:35 -07:00
configure.py Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
configure_container.sh More generic image type for OCI-compliant container technologies (#802) 2025-01-17 16:37:42 -08:00
datatypes.py feat: Add HTTPS serving option (#1000) 2025-02-07 09:39:08 -08:00
distribution.py Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
inspect.py REST API fixes (#789) 2025-01-16 13:47:08 -08:00
library_client.py if client.initialize fails, the example should exit (#954) 2025-02-04 13:54:21 -08:00
request_headers.py Add X-LlamaStack-Client-Version, rename ProviderData -> Provider-Data (#735) 2025-01-09 11:51:36 -08:00
resolver.py Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
stack.py Fix precommit check after moving to ruff (#927) 2025-02-02 06:46:45 -08:00
start_conda_env.sh feat: Add HTTPS serving option (#1000) 2025-02-07 09:39:08 -08:00
start_container.sh feat: Add HTTPS serving option (#1000) 2025-02-07 09:39:08 -08:00