mirror of
https://github.com/katanemo/plano.git
synced 2026-04-26 01:06:25 +02:00
Make native mode default, auto-download pre-compiled binaries
- Flip --native to --docker on up/down commands (native is now default) - Add ensure_wasm_plugins() and ensure_brightstaff_binary() to auto-download from GitHub releases - Add _find_config_dir() to support pip-installed usage without repo checkout - Bundle config templates in wheel via pyproject.toml force-include - Add publish-binaries.yml CI workflow for release binary uploads - Update docs to reflect native-first experience
This commit is contained in:
parent
39a5c21209
commit
edfd237111
7 changed files with 299 additions and 91 deletions
|
|
@ -3,7 +3,47 @@
|
|||
Deployment
|
||||
==========
|
||||
|
||||
Plano can be deployed in two ways: as a **Docker container** (default) or **natively** on the host without Docker.
|
||||
Plano can be deployed in two ways: **natively** on the host (default) or inside a **Docker container**.
|
||||
|
||||
Native Deployment (Default)
|
||||
---------------------------
|
||||
|
||||
Plano runs natively by default. Pre-compiled binaries (Envoy, WASM plugins, brightstaff) are automatically downloaded on the first run and cached at ``~/.plano/``.
|
||||
|
||||
Supported platforms: Linux (x86_64, aarch64), macOS (Apple Silicon).
|
||||
|
||||
Start Plano
|
||||
~~~~~~~~~~~~
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
planoai up plano_config.yaml
|
||||
|
||||
Options:
|
||||
|
||||
- ``--foreground`` — stay attached and stream logs (Ctrl+C to stop)
|
||||
- ``--with-tracing`` — start a local OTLP trace collector
|
||||
|
||||
Runtime files (rendered configs, logs, PID file) are stored in ``~/.plano/run/``.
|
||||
|
||||
Stop Plano
|
||||
~~~~~~~~~~
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
planoai down
|
||||
|
||||
Build from Source (Developer)
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you want to build from source instead of using pre-compiled binaries, you need:
|
||||
|
||||
- `Rust <https://rustup.rs>`_ with the ``wasm32-wasip1`` target
|
||||
- OpenSSL dev headers (``libssl-dev`` on Debian/Ubuntu, ``openssl`` on macOS)
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
planoai build --native
|
||||
|
||||
Docker Deployment
|
||||
-----------------
|
||||
|
|
@ -53,47 +93,12 @@ Check container health and logs:
|
|||
docker compose ps
|
||||
docker compose logs -f plano
|
||||
|
||||
Native Deployment
|
||||
-----------------
|
||||
|
||||
Run Plano directly on the host without Docker. This is useful for development, platforms without Docker, or environments where you want to avoid container overhead.
|
||||
|
||||
Prerequisites
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
- `Rust <https://rustup.rs>`_ with the ``wasm32-wasip1`` target
|
||||
- OpenSSL dev headers (``libssl-dev`` on Debian/Ubuntu, ``openssl`` on macOS)
|
||||
- Supported platforms: Linux (x86_64, aarch64), macOS (Apple Silicon)
|
||||
|
||||
Build from Source
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Compile the WASM plugins and brightstaff binary:
|
||||
You can also use the CLI with Docker mode:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
planoai build --native
|
||||
|
||||
Start Plano
|
||||
~~~~~~~~~~~~
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
planoai up plano_config.yaml --native
|
||||
|
||||
Envoy is automatically downloaded on first run and cached at ``~/.plano/bin/``. Runtime files (rendered configs, logs, PID file) are stored in ``~/.plano/run/``.
|
||||
|
||||
Options:
|
||||
|
||||
- ``--foreground`` — stay attached and stream logs (Ctrl+C to stop)
|
||||
- ``--with-tracing`` — start a local OTLP trace collector
|
||||
|
||||
Stop Plano
|
||||
~~~~~~~~~~
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
planoai down --native
|
||||
planoai up plano_config.yaml --docker
|
||||
planoai down --docker
|
||||
|
||||
Runtime Tests
|
||||
-------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue