- Multiple configs support - switch between clusters effortlessly. teleskopio reads
$KUBECONFIGvariable and checkconfig.yamlfile. - Simple JWT token authorization.
- Admin and Viewer role - Full access (admin) or Read Only access (viewer) to cluster.
- Cluster overview - get a high-level view of cluster health and activity.
- Resource editor/creator - integrated Monaco Editor with syntax highlighting.
- Live updates - real-time resource changes with Kubernetes watchers.
Podlogs and events - inspect logs and event history directly in the UI.- Owner links - navigate from a resource to its owner.
CRD- custom resource definition editor.- Multiple font options - customize the UI appearance.
- Manual
CronJobtriggering - Scale resources (
Deployments,ReplicaSets) - Filter
CTRL + Fany resource. - Jump to section
CTRL + Jany menu. - Objects multi-select operations (delete, drain, cordon, e.t.c.)
- Kubernetes resource schemas per API version.
- Light and dark themes.
- Helm integration. issue
- Resource metrics - CPU, memory, and other usage statistics.
Details
- Golang - Kubernetes golang client.
- React - responsive and modern frontend.
- shadcn/ui + Tailwind CSS - clean and flexible UI components.
- Monaco Editor - powerful code editor with syntax highlighting.
- Dynamic resources - auto-loading resources for flexible navigation.
- Kubernetes watchers - instant updates from the cluster.
Details
Download release.
Use brew (ARM and Intel):
brew tap roman-kiselenko/homebrew-teleskopiobrew install --cask teleskopio
- Pull docker image from Packages
docker pull ghcr.io/roman-kiselenko/teleskopio:latest- Generate config
docker run -it --rm ghcr.io/roman-kiselenko/teleskopio:latest config > config.yaml- Edit config
$ htpasswd -nbB admin MySecret123 # apache2-utils
> admin:$2y$05$U7puDu7wKOMP6i4eI1nO4ux909bH8FuPadEQq2oxx7SRXrBh3xJIG
vim config.yaml # edit confAig and add admin user
# add kubeconfig content to kube.configs
# check example in config.yaml- Run
Run with --network=host if you're using kind cluster
docker run -it --rm --network=host -p 3080:3080 -v $(pwd)/config.yaml:/usr/bin/config.yaml ghcr.io/roman-kiselenko/teleskopio:latest --config=/usr/bin/config.yamlOr run with docker network
docker run -it --rm -p 3080:3080 -v $(pwd)/config.yaml:/usr/bin/config.yaml ghcr.io/roman-kiselenko/teleskopio:latest --config=/usr/bin/config.yaml
5:47AM INF set loglevel level=DEBUG
5:47AM INF version version=""
5:47AM INF initialize web server addr=:3080
...log_color: false # Color output (only work with text)
log_json: true # Output logs as JSON
log_level: INFO # Log Level
server_http: ":3080" # HTTP address
jwt_key: "super-salt" # salt for JWT token
auth_disabled: false # set to true to disable auth completly
users:
- username: admin
password: "" # htpasswd -nbB admin MySecret123
role: "admin"
- username: user
password: ""
role: "viewer"
kube:
configs:
# Paste content of ~/.kube/config
# or set KUBECONFIG env variable
- apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1...
server: https://127.0.0.1:57598
name: kind-kind
contexts:
- context:
cluster: kind-kind
user: kind-kind
name: kind-kind
current-context: kind-kind
kind: Config
preferences: {}
users:
- name: kind-kind
user:
client-certificate-data: LS0tL...
client-key-data: LS0tL...- Generate config
teleskopio config > config.yaml teleskopio
Details
- Hide/Show sidebar
CTRL+B - Get back
ESC - In editor
CTRL+Ssave - Left mouse click - open resource, right mouse click dropdown menu
CTRL+JJump to some section (Pod, Deployments, Configuration e.t.c.)
pnpm installmake run-frontendmake run-backendmake lint
teleskopio is an open-source project, and contributions are welcome.
This is a beta version. Information may be inaccurate or incomplete, and the software is provided "as is." We assume no liability for any issues arising from its use.






