taskiq-dashboard
Broker-agnostic admin dashboard for Taskiq.
Live demo of UI: https://taskiq-dashboard.danfimov.com/
Installation
To install taskiq-dashboard package, run the following command:
pip install taskiq-dashboard
To pull the Docker image with taskiq-dashboard application , run the following command:
docker pull ghcr.io/danfimov/taskiq-dashboard:latest
Usage
Run with code
-
Import and connect middleware to your Taskiq broker:
from taskiq_dashboard import DashboardMiddleware broker = ( RedisStreamBroker( url=redis_url, queue_name="my_lovely_queue", ) .with_result_backend(result_backend) .with_middlewares( DashboardMiddleware( url="http://localhost:8000", # the url to your taskiq-dashboard instance api_token="supersecret", # secret for accessing the dashboard API broker_name="my_worker", # it will be worker name in the dashboard ) ) )
-
Run taskiq-dashboard with the following code:
from taskiq_dashboard import TaskiqDashboard from your_project.broker import broker # your Taskiq broker instance def run_admin_panel() -> None: app = TaskiqDashboard( api_token='supersecret', # the same secret as in middleware storage_type='postgresql', # or 'sqlite' database_dsn="postgresql://taskiq-dashboard:look_in_vault@postgres:5432/taskiq-dashboard", broker=broker, # pass your broker instance here to enable additional features (optional) host='0.0.0.0', port=8000, ) app.run() if __name__ == '__main__': run_admin_panel()
Run inside docker container
You can use this docker-compose.yml file to run taskiq-dashboard along with PostgreSQL:
services:
postgres:
image: postgres:18
environment:
POSTGRES_USER: taskiq-dashboard
POSTGRES_PASSWORD: look_in_vault
POSTGRES_DB: taskiq-dashboard
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
dashboard:
image: ghcr.io/danfimov/taskiq-dashboard:latest
depends_on:
- postgres
environment:
TASKIQ_DASHBOARD__STORAGE_TYPE: postgres
TASKIQ_DASHBOARD__POSTGRES__HOST: postgres
TASKIQ_DASHBOARD__API__TOKEN: supersecret
ports:
- "8000:8000"
volumes:
postgres_data:
You can also run taskiq-dashboard with SQLite by using the following docker-compose.yml file:
services:
dashboard:
image: ghcr.io/danfimov/taskiq-dashboard:latest
environment:
TASKIQ_DASHBOARD__STORAGE_TYPE: sqlite
TASKIQ_DASHBOARD__SQLITE__DSN: sqlite+aiosqlite:///taskiq_dashboard.db
TASKIQ_DASHBOARD__API__TOKEN: supersecret
volumes:
- taskiq_dashboard_sqlite:/app/taskiq-dashboard.db
ports:
- "8000:8000"
volumes:
taskiq_dashboard_sqlite:
Configuration
Taskiq-dashboard can run with PostgreSQL or SQLite.
You can configure it using environment variables or by passing parameters directly to the TaskiqDashboard class. For a full list of configuration options, please refer to the Configuration article in documentation.
If you run the dashboard behind a reverse proxy at a path prefix (e.g. /taskiq-dashboard/), set TASKIQ_DASHBOARD__API__ROOT_PATH (or pass root_path= to TaskiqDashboard) — see Running behind a reverse proxy in documentation.
Development
For development and contributing instructions, please refer to the Contribution guide in documentation.
Metadata
Release files for taskiq-dashboard 0.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| taskiq_dashboard-0.5.1.tar.gz | 674.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| taskiq_dashboard-0.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 811.2 kB
Release files / taskiq_dashboard-0.5.1.tar.gz
| Download URL | taskiq_dashboard-0.5.1.tar.gz |
|---|---|
| Size | 674.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
48591379dcb8d9dc7901cfcebfab396618355009077de441f1ea401aed1ed8a8
|
|
BLAKE2b-256 checksum How to use checksums |
bcbb3988bb6fdde550e85d8977c23d91a9d7d8c29c8f2bc93030c287a43db8f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / taskiq_dashboard-0.5.1-py3-none-any.whl
| Download URL | taskiq_dashboard-0.5.1-py3-none-any.whl |
|---|---|
| Size | 136.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3425e204c4401ac8dcd51af690b80a6eeb0523a1a993260a41c0404e6024bc6c
|
|
BLAKE2b-256 checksum How to use checksums |
289d162498e7edef681d98b306c3ddd3cb56826dc8812365ecc865530955b229
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|