Files
unraid-docker-manager/README.md
T
Lucas Berger e92bfc8061 docs(05-03): write deployment README
- Step-by-step installation guide for Unraid
- n8n container configuration with Docker socket access
- Credential creation instructions for Telegram API and Auth
- Usage section with all 6 commands documented
- No troubleshooting section (focused on initial setup)
2026-01-31 21:18:27 -05:00

2.9 KiB

Docker Manager Bot

Telegram bot for managing Docker containers on Unraid. Control containers from your phone with simple keyword commands.

Prerequisites

  • Unraid server with Docker enabled
  • n8n container running on Unraid
  • Telegram Bot Token (from @BotFather)
  • Your Telegram User ID (from @userinfobot)

Installation

1. Configure n8n Container

Your n8n container needs Docker socket access to manage other containers. Add these flags to your n8n container configuration:

docker run -d \
  --name n8n \
  --group-add 281 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /path/to/curl:/usr/bin/curl:ro \
  -p 5678:5678 \
  n8nio/n8n

Required flags:

  • --group-add 281 - Adds Docker group (GID 281 on Unraid) so n8n can access the Docker socket
  • -v /var/run/docker.sock:/var/run/docker.sock - Mounts the Docker socket for container management
  • -v /path/to/curl:/usr/bin/curl:ro - Mounts a static curl binary (hardened n8n image lacks package manager)

If using Unraid's Community Applications, add these to the "Extra Parameters" and "Path" sections of your n8n container template.

2. Create n8n Credentials

In the n8n web interface, create two credentials:

Telegram API credential:

  1. Go to Settings > Credentials > Add Credential
  2. Search for "Telegram API"
  3. Name: Telegram API
  4. Access Token: paste your bot token from @BotFather

Telegram Auth credential:

  1. Go to Settings > Credentials > Add Credential
  2. Search for "Header Auth"
  3. Name: Telegram Auth
  4. Header Name: userId
  5. Header Value: your Telegram user ID (numeric, e.g., 123456789)

3. Import Workflow

  1. Download n8n-workflow.json from this repository
  2. In n8n: Workflows > Import from File
  3. Select n8n-workflow.json
  4. When prompted, map credentials:
    • Telegram API -> your Telegram API credential
    • Telegram Auth -> your Telegram Auth credential

4. Activate Workflow

  1. Open the imported workflow in n8n
  2. Click the "Active" toggle in the top-right corner
  3. Test by sending "status" to your bot in Telegram

Usage

Send commands via Telegram or use the persistent menu buttons:

Command Description
status View all containers with status indicators
start <name> Start a stopped container
stop <name> Stop a running container
restart <name> Restart a container
update <name> Pull latest image and recreate container
logs <name> [lines] View container logs (default: 50 lines)

Container names support partial matching. For example, start plex will match linuxserver-plex.

Menu Buttons

Send /start or any unrecognized text to display the persistent keyboard with quick-access buttons for all commands.

Security

The bot only responds to the Telegram user ID configured in the "Telegram Auth" credential. Messages from other users are silently ignored.

License

MIT