Run a broker-managed local service#
conda-presto registers conda-presto.server as a manual conda-broker service.
Use it for repeated local HTTP requests or as the service behind the internal
Presto solver backend.
The service binds to a broker-assigned loopback port. It does not start
automatically and does not change one-shot conda presto commands.
Install and verify the provider#
Use the latest-release installation in Quick start, then verify the provider from that activated conda environment:
conda broker list
In a source checkout, use the production Pixi environment:
pixi install --environment prod
pixi shell --environment prod
conda broker list
Run the remaining commands in that Pixi shell.
The list should contain conda-presto.server. If it does not, continue with
Troubleshoot conda-presto.
Start and wait for readiness#
Start the service explicitly, then allow enough time for an initial repodata download:
conda broker start conda-presto.server
conda broker wait conda-presto.server --timeout 180
wait succeeds only after /health reports that the persistent solver worker
has loaded its configured indexes.
Obtain the endpoint#
Display the endpoint for interactive use:
conda broker endpoint conda-presto.server
For a shell script, request JSON and extract the resolved URL:
export CONDA_PRESTO_URL="$(
conda broker endpoint conda-presto.server --json \
| jq --raw-output '.endpoint.url'
)"
curl --fail --silent --show-error "$CONDA_PRESTO_URL/health"
Use the endpoint with the public API:
curl --fail --silent --show-error \
"$CONDA_PRESTO_URL/resolve" \
--json '{"specs":["python=3.13"],"platforms":["linux-64"]}' \
| jq
Inspect status, events, and logs#
Read the current service state:
conda broker status conda-presto.server
conda broker status conda-presto.server --json
Follow broker lifecycle events and service output in separate terminals:
conda broker events --follow
conda broker logs conda-presto.server --follow
See Monitor a running service for readiness and refresh-log interpretation.
Apply environment changes#
conda-broker captures the parent environment when its daemon starts.
Restarting only conda-presto.server does not import variables exported later
in the shell. Stop the broker before changing service settings:
conda broker stop
export CONDA_PRESTO_CHANNELS=conda-forge,bioconda
export CONDA_PRESTO_PLATFORMS=linux-64,osx-arm64
conda broker start conda-presto.server
conda broker wait conda-presto.server --timeout 180
Use Configure result caching and Refresh cached solver results for cache settings that must be present at service startup.
Stop or restart the service#
Stop only conda-presto while leaving the broker available:
conda broker stop conda-presto.server
Restart it with the environment already held by the broker daemon:
conda broker restart conda-presto.server
conda broker wait conda-presto.server --timeout 180
Trust boundary#
Loopback prevents remote network access, but it does not authenticate users on the same host. Run the service only on a trusted single-user system or behind equivalent process isolation. Keep private-channel credentials and persistent cache data inside that boundary. The solver route rejects browser-originated, non-JSON, wrong-authority, and non-loopback requests, but another local process that can discover the endpoint remains inside the same trust boundary.
Read Security and trust model before using private channels. Use Use the Presto solver backend to select the local solver backend. See Broker service reference for the provider and health-check contract.