Installation and setup
Step-by-step guide to install and set up WaveKit using Docker, binary, or Docker Compose. Learn about key configuration variables and initial login.
This guide provides instructions for installing and setting up WaveKit. WaveKit requires a PostgreSQL database to store its metadata (like cluster connection details). You can use a bundled PostgreSQL for quick setup or connect to your own existing instance.
Key configuration variables
Before you begin, be aware of these key environment variables that WaveKit uses:
WK_PORT
: (Optional) Specifies the port on which the WaveKit server will listen. Defaults to8020
.WK_PG_DSN
: (Required for binary and Docker Compose with external PG) The PostgreSQL connection string for WaveKit’s metadata database.- Format:
postgres://<user>:<password>@<host>:<port>/<database_name>
- It’s important to note that this database is used by WaveKit to store its own operational data and does not store your RisingWave cluster’s user data.
- Format:
WK_ROOT_PASSWORD
: (Optional) Sets the initial password for theroot
user in the WaveKit UI. If not set, it defaults toroot
. It’s recommended to set this for any persistent deployment.WK_RISECTLDIR
: (Optional) May be used by WaveKit if it needs to locaterisectl
resources for executing commands against your RisingWave cluster. The default behavior usually suffices.
Option 1: Quick setup with docker (bundled PostgreSQL)
This is the fastest way to try WaveKit. The risingwavelabs/wavekit:vX.Y.Z-pgbundle
image includes a PostgreSQL server. Replace vX.Y.Z
with the desired WaveKit version (for example, v0.4.0
).
A. Ephemeral storage (for testing only) All WaveKit metadata will be lost if the container is removed.
To set a custom root password:
B. Persistent storage (recommended for standalone Docker)
WaveKit metadata is stored in a Docker volume (wavekit-data
), ensuring data persists across container restarts or recreations.
Option 2: Setup with binary (requires external PostgreSQL)
This method uses a standalone WaveKit binary and requires you to have a separate, running PostgreSQL database.
- Download and install the latest WaveKit binary:
- Ensure your PostgreSQL database is accessible and set the
WK_PG_DSN
environment variable. Then, run WaveKit:(AdjustWK_PG_DSN
andWK_ROOT_PASSWORD
accordingly.)
Option 3: Recommended setup (docker compose with external PostgreSQL)
This method uses Docker Compose to run WaveKit and allows you to easily manage it alongside your own PostgreSQL instance (either also as a Docker container or an external one).
-
Create a
docker-compose.yaml
file:Note:
- Replace
vX.Y.Z
with the specific WaveKit version (for example,v0.4.0
). - Adjust
WK_PG_DSN
to point to your PostgreSQL instance. Ifdb
is a service in the same Docker Compose, you can usedb_host: db
. - Update PostgreSQL credentials and database name.
- Replace
-
Start WaveKit:
Verifying the installation
After starting WaveKit, check its logs to ensure it started without errors:
- If using Docker/Docker Compose:
docker logs wavekit
(or your service name). - If using binary: Observe the terminal output.
Initial login and dashboard overview
- Access WaveKit UI: Open your web browser and navigate to
http://localhost:8020
(or the host/port you configured). - Login:
- Username:
root
- Password: The password you set via
WK_ROOT_PASSWORD
, orroot
if not set.
- Username:
- Dashboard: Upon successful login, you’ll see the WaveKit dashboard. This is your main entry point to:
- Manage ‘Clusters’: For connecting to your RisingWave instances.
- Use the ‘SQL Console’: For querying your RisingWave data.
- Access links to external resources and documentation.
You are now ready to Connect to your RisingWave clusters!