-
Notifications
You must be signed in to change notification settings - Fork 0
Installation Guide
ksauraj edited this page Aug 5, 2026
·
1 revision
- Go 1.23+ (for building from source)
- Telegram Bot Token from @BotFather
- Kubernetes cluster (v1.28+)
- kubectl configured with cluster access
- Helm 3.12+ (for Kubernetes deployment)
# Add the Helm repository
helm repo add telectl https://ksauraj.github.io/telectl/
helm repo update
# Install with required values
helm install telectl telectl/telectl \
--namespace telectl \
--create-namespace \
--set telegram.botToken="YOUR_BOT_TOKEN" \
--set telegram.allowedUserIds="{123456789}"git clone https://github.com/ksauraj/telectl
cd telectl
helm install telectl ./charts/telectl \
--namespace telectl \
--create-namespace \
--set telegram.botToken="YOUR_BOT_TOKEN" \
--set telegram.allowedUserIds="{123456789}"# Pull from GHCR
docker pull ghcr.io/ksauraj/telectl:latest
# Run with config
docker run --rm -it \
-v ~/.kube:/home/telectl/.kube:ro \
-v ~/.config/telectl/telectl.yaml:/app/config.yaml:ro \
-e TELEGRAM_BOT_TOKEN="YOUR_BOT_TOKEN" \
ghcr.io/ksauraj/telectl:latest# Build
git clone https://github.com/ksauraj/telectl
cd telectl
make build
# Run
./telectl --config config.yamlgo install github.com/ksauraj/telectl/cmd/telectl@latest| Setting | Description | Example |
|---|---|---|
telegram.bot_token |
Bot token from @BotFather | 123456789:ABCdef... |
telegram.allowed_user_ids |
Your Telegram user ID | [123456789] |
- Message @userinfobot
- Copy the numeric ID it returns
-
--configflag $HOME/.config/telectl/telectl.yaml$HOME/.config/telectl.yaml/etc/telectl/telectl.yaml
# ~/.config/telectl/telectl.yaml
telegram:
bot_token: "123456789:ABCdefGhIjKlMnOpQrStUvWxYz"
allowed_user_ids: [123456789]# Check pod status
kubectl get pods -n telectl -l app.kubernetes.io/name=telectl
# Check logs
kubectl logs -n telectl -l app.kubernetes.io/name=telectl- Open Telegram
- Search for your bot username
- Send
/start - You should see the main menu
| Issue | Solution |
|---|---|
| Bot doesn't respond | Check logs: kubectl logs -n telectl -l app.kubernetes.io/name=telectl
|
| "User not allowed" | Verify allowed_user_ids matches your Telegram ID |
| RBAC errors | Check kubectl auth can-i get pods --as=system:serviceaccount:telectl:telectl
|
| Image pull errors | Verify GHCR image exists: docker pull ghcr.io/ksauraj/telectl:latest
|
- Configuration Reference - Complete configuration options
- Helm Chart Guide - Advanced Helm deployment
- Security - Production security hardening
Getting Started
User Guides
Deployment
- Try It Locally
- Helm Chart Guide
- Docker Deployment
- Two Deployment Modes
- Kubernetes RBAC
- Impersonation & RBAC
- Production Checklist
Development
- Architecture Overview
- How It Works
- Development Setup
- Contributing Guide
- Testing Guide
- Release Process
- Versioning & Releases
Operations