Sign inSign up

yoniergomez/botainer

By yoniergomez

β€’Updated 2 days ago

Telegram bot written in Go to manage Docker containers remotely. 25+ commands, multi-arch.

Image
0

6.5K

yoniergomez/botainer repository overview

⁠🐳 Botainer

Manage Docker from Telegram. Open-source bot written in Go β€” 25+ commands, real-time notifications, Docker Compose support, multi-arch image (amd64 + arm64).

πŸ”— GitHub⁠ Β· Landing⁠ Β· Issues⁠


⁠Quick Start

docker run -d \
  --name botainer \
  --restart unless-stopped \
  -e TELEGRAM_BOT_TOKEN="your_token_here" \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  yoniergomez/botainer:latest

Get your token from @BotFather⁠ on Telegram.


⁠With Docker Compose

services:
  botainer:
    image: yoniergomez/botainer:latest
    container_name: botainer
    restart: unless-stopped
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /home/ubuntu:/workspace:ro
    environment:
      - TELEGRAM_BOT_TOKEN=your_token_here
      - ALLOWED_USERS=123456789        # optional: restrict access by Telegram User ID
      - HOST_HOME=/home/ubuntu         # optional: for Compose project detection
      - WORKSPACE=/workspace           # optional: path to your Compose projects
    network_mode: host
docker compose up -d
docker logs -f botainer
# β†’ Bot started: @your_bot

⁠Environment Variables

VariableRequiredDescription
TELEGRAM_BOT_TOKENβœ…Bot token from @BotFather
ALLOWED_USERS❌Comma-separated Telegram User IDs. Empty = allow all
HOST_HOME❌Host home path (e.g. /home/ubuntu)
WORKSPACE❌Path to Docker Compose projects directory

⁠Available Commands

CategoryCommands
Status/start /list /ps /running /stats
Management/restart /stop /pause /unpause /create
Logs/logs /logfile
Images/images /checkupdates /updateall
Compose/compose
Resources/volumes /networks /prune /search
Utilities/exec /inspect /env /diagnose /favorites /history

Commands are auto-registered in BotFather when the bot starts.


⁠Automatic Notifications

Once active, the bot sends alerts for:

  • 🟒 Container started
  • πŸ”΄ Container stopped
  • πŸ’₯ Container crashed
  • πŸ”„ Container restarted
  • ⏸️ Container paused / ▢️ resumed
  • πŸ—‘οΈ Container removed
  • πŸ†• New image version available (with one-tap update button)

Image updates are checked automatically every 6 hours.


⁠Architectures

ArchitectureTag
linux/amd64latest
linux/arm64latest

Built natively on GitHub Actions β€” no QEMU emulation.


⁠Security

Restrict access to specific users by setting ALLOWED_USERS:

-e ALLOWED_USERS=123456789,987654321

Get your Telegram User ID from @userinfobot⁠.


⁠Tags

TagDescription
latestLatest stable build
{alpine}-go{go}-tgapi{tgapi}Versioned build (e.g. 3.21.3-go1.24.2-tgapiv5.5.1)

⁠License

MIT β€” view license⁠

Tag summary

Content type

Image

Digest

sha256:4873c4dc7…

Size

83.1 MB

Last updated

2 days ago

docker pull yoniergomez/botainer