Skip to content

Installation

ShinyHub is distributed as a Python package, a standalone server binary, and a container image. Start with uv for a local evaluation; use Docker or the standalone binary for a persistent server.

Install with uv

uv installs the ShinyHub CLI and server in an isolated tool environment. It is also the runtime ShinyHub uses for Python apps.

uv tool install shinyhub
shinyhub serve

The first run asks for an administrator username and password, creates a private shinyhub.yaml, and stores its SQLite database and application data under ./data/. Open http://localhost:8080 after startup.

Use shinyhub init when you prefer to create and inspect the configuration before starting the server.

Install with pip

python -m pip install shinyhub
shinyhub serve

The package includes the server binary. Install uv separately before deploying Python applications.

Install the standalone binary

curl -fsSL https://raw.githubusercontent.com/rvben/shinyhub/main/scripts/install.sh | sh
shinyhub serve

The standalone binary does not include R or Python. Install the application runtimes on the host, or configure ShinyHub's Docker runtime.

Run with Docker

The published image contains the control plane, dashboard, API, and proxy. Use the reference Docker Compose deployment when you also want ShinyHub to start applications as containers.

docker pull ghcr.io/rvben/shinyhub:latest

Build from source

git clone https://github.com/rvben/shinyhub.git
cd shinyhub
go build -o bin/shinyhub ./cmd/shinyhub
bin/shinyhub serve

ShinyHub requires the Go version declared in go.mod.

Next step

Continue with the quick start to deploy an application through the same workflow used against a remote server.