Quick Start
Get your bot running on BotDockr in 3 steps.
1. Create an account
Sign up at botdockr.com. No credit card required.
2. Connect your GitHub repository
Authorize BotDockr to access your GitHub account, then select the repository that contains your bot code.
3. Deploy
Click Deploy. BotDockr detects your language, installs dependencies, builds a container, and starts your bot. Done.
Connect GitHub
BotDockr uses GitHub as the source for your bot code. When you connect a repository, we set up a webhook so that every push to your main branch triggers a new deployment.
You can connect as many repositories as your plan allows. Each repository corresponds to one bot deployment.
Permissions required
BotDockr requests read access to your repository contents. We never write to your repo or access other repositories you haven't selected.
Branch configuration
By default, BotDockr deploys from the main branch. You can change the deploy branch from the bot settings in your dashboard.
Project Structure
BotDockr automatically detects your project type based on the files in your repository root:
We run npm install (or yarn install if yarn.lock is present) and then execute the start script defined in your package.json.
We run pip install -r requirements.txt and then execute python main.py (or the entry point you configure in the dashboard).
Deploy Your Bot
Deployments happen automatically on every push to your deploy branch. You can also trigger a manual deployment from the dashboard.
Deployment process
$ git push origin main
> BotDockr: Build started...
> Installing dependencies...
> Building container...
> Health check passed β
> Bot is live!Zero-downtime deploys
When a new deployment succeeds, traffic switches to the new container and the old one is gracefully shut down. Your bot has zero downtime between deployments.
Environment Variables
Store API keys, bot tokens, database URLs, and any secrets your bot needs. Environment variables are set through the dashboard and injected into your container at runtime.
Security
All environment variables are encrypted at rest using AES-256. They are never exposed in logs, build output, or the GitHub webhook payload.
How to add variables
BOT_TOKEN=your-telegram-bot-token
API_KEY=sk-your-api-key
DATABASE_URL=postgres://user:pass@host/dbReserved variables
BotDockr sets the following variables automatically: PORT (the port your bot should listen on, if applicable), NODE_ENV (set to production for Node.js projects).
Live Logs
Stream your bot's stdout and stderr output in real time from the dashboard. No SSH, no external tools.
Log retention
Starter plans retain logs for 7 days. Pro plans retain for 30 days. Scale plans have unlimited retention.
Auto-Restarts
If your bot process crashes or exits unexpectedly, BotDockr restarts it automatically within seconds.
How it works
BotDockr monitors your container's main process. If it exits with a non-zero code, we restart it immediately. If it crashes repeatedly (more than 5 times in 2 minutes), we pause restarts and notify you.
You receive crash notifications via email. Dashboard shows a timeline of crash and restart events.
Supported Languages
BotDockr currently supports two runtimes with automatic detection:
Node.js
Latest LTS version (currently Node.js 20)
Detected by: package.json in the root directory
Start command: npm start (or the start script in package.json)
Python
Python 3.11+
Detected by: requirements.txt in the root directory
Start command: python main.py (configurable)
Plans & Limits
Every plan includes automatic deployments, crash recovery, live logs, and environment variables. Plans differ in the number of bots and resource allocation.
Starter β $7/mo
1 bot, shared resources, 7-day log retention, community support.
Pro β $19/mo
5 bots, priority build queue, 30-day log retention, priority support, custom domains.
Scale β $49/mo
20 bots, dedicated resources, unlimited log retention, dedicated support, custom domains, team members.