Repository navigation
RoboBetBot v1.1.0
RoboBetBot v1.1.0
Docker & NAS Support Release
This release brings comprehensive Docker containerization and native support for NAS devices, making RoboBetBot easier to deploy and manage across all platforms.
What's New
Major Features
Full Docker Support
- Native Docker containerization for cross-platform deployment
- Automated container builds with health monitoring
- Resource management and limits for optimal performance
- Non-root user execution for enhanced security
NAS Device Integration
- GUI-based deployment via Dockge, Portainer, and native NAS interfaces
- Native support for:
- Synology DSM (Docker Package & Container Manager)
- QNAP Container Station
- Unraid (Docker Tab & Compose Manager)
- TrueNAS SCALE (Apps & Dockge)
- OpenMediaVault
- Pre-configured compose files for each platform
New Deployment Options
- Three deployment methods to suit any skill level:
- Portable (Windows) - Zero installation, perfect for sharing
- Docker - Professional deployment for servers and NAS
- Source - Direct installation for developers
- Comprehensive comparison guide to help choose the right method
Docker-Specific Enhancements
Automated Setup
docker-compose.dockge.ymlfor one-click GUI deployment- Auto-clones from GitHub - no file uploads needed
- Self-configuring with just a Discord token
Management Tools
docker.shscript for Linux/Mac with commands:- Build, start, stop, restart containers
- View logs and status
- Automated backup/restore
- Shell access for debugging
- Cross-platform Makefile for consistent commands
Professional Features
- Persistent data volumes for database storage
- Environment-based configuration
- Health checks with auto-restart
- Timezone support for proper logging
- Build optimization with Alpine Linux (smaller images)
Documentation
New Guides
-
DOCKER.md - Complete Docker deployment guide with:
- Platform-specific instructions for all major NAS brands
- Volume path configuration for each system
- Troubleshooting common Docker issues
- Advanced configurations (external DB, multi-bot, Kubernetes)
-
DEPLOYMENT_OPTIONS.md - Comparison of all deployment methods
-
CONTRIBUTING.md - Guidelines for contributors
Enhanced Documentation
- Expanded README with Docker quick start
- Updated setup guide with Docker instructions
- Migration guides between deployment methods
🛠️ Technical Improvements
-
Container Optimization
- Alpine Linux base for minimal size (~100MB)
- Multi-stage builds possible
- Efficient dependency installation
-
Database Flexibility
- Support for DATABASE_PATH environment variable
- Docker volume management
- Easy backup/restore procedures
-
Security Enhancements
- Non-root container execution
- Read-only file system compatibility
- No exposed ports required
Installation
Docker Quick Start
Option 1: Standard Docker Compose
git clone https://github.com/yzRobo/RoboBetBot.git
cd RoboBetBot
cp .env.example .env
# Edit .env with your Discord token
docker-compose up -dOption 2: GUI Deployment (NEW!)
For Dockge/Portainer/NAS users:
- Create new stack in your GUI
- Copy
docker-compose.dockge.ymlcontents - Change
DISCORD_TOKENto your token - Deploy!
No command line or file uploads needed - the container auto-configures itself!
Portable Version (Windows)
Still available and unchanged:
- Download from [Releases](https://github.com/yzRobo/RoboBetBot/releases)
- Run
Setup.batandRunBot.bat
Developer Setup
npm install
npm startDeployment Comparison
| Method | Best For | Setup Time | Technical Skill |
|---|---|---|---|
| Docker (NEW) | NAS, VPS, Servers | 2 minutes | Basic |
| Portable | Windows users, sharing | 1 minute | None |
| Source | Development, customization | 5 minutes | Intermediate |
Platform Support
Newly Supported Platforms
- Synology NAS (DSM 6/7)
- QNAP NAS
- Unraid
- TrueNAS SCALE/CORE
- OpenMediaVault
- Any Docker-capable Linux VPS
- Raspberry Pi (ARM support)
- macOS with Docker Desktop
Existing Support
- Windows 10/11 (Portable)
- Any system with Node.js 16.9+
Migration Guide
From v1.0.0 to v1.1.0
No breaking changes - just new deployment options!
- Database compatible - Your
bets.dbworks across all deployment methods - No code changes - Existing setups continue working
- Optional upgrade - Switch to Docker when convenient
Switching Deployment Methods
# Portable → Docker
Copy bets.db to ./data/bets.db
# Docker → Portable
docker cp robobetbot:/data/bets.db ./bets.db
# Any → Any
Just copy the bets.db file!Bug Fixes
- Fixed potential database path issues in containerized environments
- Improved error handling for missing environment variables
- Better timezone handling for international users
Development
New Scripts & Tools
docker.sh- Docker management scriptMakefile- Cross-platform build commands- Enhanced
build-portable.jswith better error handling
Repository Structure
RoboBetBot/
├── 🆕 Dockerfile # Container definition
├── 🆕 docker-compose.yml # Standard Docker deployment
├── 🆕 docker-compose.dockge.yml # GUI deployment optimized
├── 🆕 docker.sh # Management script
├── 🆕 Makefile # Cross-platform commands
├── 🆕 DOCKER.md # Docker documentation
├── 🆕 DEPLOYMENT_OPTIONS.md # Comparison guide
├── 🆕 CONTRIBUTING.md # Contribution guidelines
├── bot.js # Core bot (unchanged)
├── database.js # Database (Docker-aware)
├── commands.js # Commands (unchanged)
└── scripts/
└── build-portable.js # Portable builder
Known Issues
- First Docker pull takes 2-3 minutes (downloading dependencies)
- Some NAS devices may need manual volume path configuration
- TrueNAS CORE users should use TrueNAS SCALE for easier deployment
What's Next (v1.2.0)
- Web dashboard for statistics
- Docker Hub automated builds
- ARM64 native images
- Backup automation
- Multi-server support in single container
Upgrade Instructions
For Existing Users
Currently using Portable (Windows):
No action needed - continue using as normal, or optionally try Docker
Currently using Source:
git pull origin main
npm install
# Optional: Switch to Docker
docker-compose up -dWant to try Docker:
- Stop current bot
- Copy your
bets.dbto./data/bets.db - Follow Docker quick start above
System Requirements
Docker Deployment (NEW)
- Docker Engine 20.10+ or Docker Desktop
- 100MB disk space
- 128MB RAM
- Any OS with Docker support
Portable Version
- Windows 10/11
- 200MB disk space
- No changes from v1.0.0
Source Installation
- Node.js 16.9.0+
- No changes from v1.0.0
Credits
- Docker implementation and NAS guides by @yzRobo
- Thanks to the community for platform testing
Checksums
Docker-Betting-Bot-Portable-v1.1.0.zip
SHA256: [Will be added after build]
MD5: [Will be added after build]
Docker Image: robobetbot:1.1.0
SHA256: [Will be added after build]
Support
- [Report bugs](https://github.com/yzRobo/RoboBetBot/issues)
- [Docker-specific issues](https://github.com/yzRobo/RoboBetBot/issues/new?labels=docker)
- [NAS setup help](https://github.com/yzRobo/RoboBetBot/issues/new?labels=nas,docker)
License
GPL-3.0 - Ensuring RoboBetBot remains free and open source forever.
Full Changelog: [v1.0.0...v1.1.0](v1.0.0...v1.1.0)
Summary of Changes
- Added complete Docker support
- Added NAS device integration
- Added comprehensive Docker documentation
- Added Docker management tools
- Added GUI deployment option
- Improved security with non-root containers
- No breaking changes - fully backward compatible