Features: - Complete Ubuntu dependency resolution in requirements.txt - Safe Docker deployment that preserves existing bash startup setups - Isolated Docker environment (docker-ultroid/) with different ports - Automatic detection of existing bot configurations - Session generation scripts for Docker deployment - Health check and diagnostic tools - Comprehensive documentation and deployment guides Safety: - Detects existing 'bash startup' method and creates isolated environment - Uses different ports (8081) to avoid conflicts - Separate volumes and configs for Docker deployment - Both bash startup and Docker can run side by side - No interference with existing bot setups Files added/updated: - requirements.txt (all missing dependencies) - Docker setup (Dockerfile, docker-compose.yml, .env.sample) - Deployment scripts (ubuntu_setup.sh, docker-deploy.sh, quick-start.sh) - Safety scripts (safe-docker-setup.sh with isolation logic) - Management tools (Makefile, health_check.sh, generate-session.sh) - Documentation (SAFE_DOCKER_GUIDE.md, DOCKER_DEPLOYMENT.md, etc.) Ready for production Ubuntu server deployment!
124 lines
4.6 KiB
Bash
124 lines
4.6 KiB
Bash
#!/bin/bash
|
|
|
|
# Ultroid Session Generator - Docker Version
|
|
# Generate Telegram session string using Docker
|
|
|
|
set -e
|
|
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m'
|
|
|
|
echo -e "${BLUE}"
|
|
echo "╔══════════════════════════════════════════════════════════════╗"
|
|
echo "║ 🔑 ULTROID SESSION GENERATOR ║"
|
|
echo "║ Generate Telegram Session String ║"
|
|
echo "╚══════════════════════════════════════════════════════════════╝"
|
|
echo -e "${NC}"
|
|
|
|
echo -e "${YELLOW}📱 Choose session generation method:${NC}"
|
|
echo "1. Docker (Recommended)"
|
|
echo "2. Local Python"
|
|
echo "3. Telegram Bot (@SessionGeneratorBot)"
|
|
echo "4. Online Repl.it"
|
|
|
|
read -p "Select method (1-4): " method
|
|
|
|
case $method in
|
|
1)
|
|
echo -e "\n${BLUE}🐳 Using Docker method...${NC}"
|
|
|
|
# Create temporary session container
|
|
echo -e "${YELLOW}📦 Setting up session generator...${NC}"
|
|
mkdir -p session_output
|
|
|
|
# Build if needed
|
|
if ! docker images | grep -q ultroid-main; then
|
|
echo -e "${YELLOW}🔨 Building Docker image...${NC}"
|
|
docker build -t ultroid-session .
|
|
fi
|
|
|
|
echo -e "${GREEN}🚀 Starting session generator...${NC}"
|
|
echo -e "${YELLOW}📝 Follow the prompts to enter your Telegram credentials${NC}"
|
|
|
|
docker run -it --rm \
|
|
-v "$(pwd)/session_output:/output" \
|
|
ultroid-session \
|
|
bash -c "
|
|
cd /output
|
|
wget -O session.py https://git.io/JY9JI
|
|
python3 session.py
|
|
echo
|
|
echo '✅ Session generated successfully!'
|
|
echo '📋 Copy the session string above to your .env file'
|
|
echo '📁 Session files saved to session_output/ directory'
|
|
"
|
|
;;
|
|
|
|
2)
|
|
echo -e "\n${BLUE}🐍 Using local Python method...${NC}"
|
|
|
|
# Check if Python is available
|
|
if ! command -v python3 &> /dev/null; then
|
|
echo -e "${RED}❌ Python3 not found. Please install Python3 or use Docker method.${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
echo -e "${YELLOW}📥 Downloading session generator...${NC}"
|
|
wget -O session.py https://git.io/JY9JI
|
|
|
|
echo -e "${GREEN}🚀 Starting session generator...${NC}"
|
|
python3 session.py
|
|
|
|
echo -e "${GREEN}✅ Session generated!${NC}"
|
|
rm -f session.py
|
|
;;
|
|
|
|
3)
|
|
echo -e "\n${BLUE}🤖 Using Telegram Bot method...${NC}"
|
|
echo -e "${YELLOW}📱 Steps:${NC}"
|
|
echo "1. Open Telegram"
|
|
echo "2. Search for @SessionGeneratorBot"
|
|
echo "3. Start the bot and follow instructions"
|
|
echo "4. Copy the session string to your .env file"
|
|
echo ""
|
|
echo -e "${GREEN}✨ This is the easiest method!${NC}"
|
|
;;
|
|
|
|
4)
|
|
echo -e "\n${BLUE}🌐 Using Online Repl.it method...${NC}"
|
|
echo -e "${YELLOW}📱 Steps:${NC}"
|
|
echo "1. Go to: https://replit.com/@TeamUltroid/UltroidStringSession"
|
|
echo "2. Click 'Fork' to create your own copy"
|
|
echo "3. Click 'Run' and follow the instructions"
|
|
echo "4. Copy the session string to your .env file"
|
|
echo ""
|
|
echo -e "${GREEN}✨ No local setup required!${NC}"
|
|
;;
|
|
|
|
*)
|
|
echo -e "${RED}❌ Invalid selection${NC}"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo -e "\n${GREEN}"
|
|
echo "╔══════════════════════════════════════════════════════════════╗"
|
|
echo "║ 📋 NEXT STEPS ║"
|
|
echo "╚══════════════════════════════════════════════════════════════╝"
|
|
echo -e "${NC}"
|
|
|
|
echo -e "${YELLOW}1.${NC} Add the session string to your .env file:"
|
|
echo -e " ${BLUE}SESSION=your_session_string_here${NC}"
|
|
echo ""
|
|
echo -e "${YELLOW}2.${NC} Make sure you have configured:"
|
|
echo -e " ${BLUE}API_ID=your_api_id${NC}"
|
|
echo -e " ${BLUE}API_HASH=your_api_hash${NC}"
|
|
echo ""
|
|
echo -e "${YELLOW}3.${NC} Start the bot:"
|
|
echo -e " ${BLUE}./docker-deploy.sh${NC}"
|
|
echo ""
|
|
echo -e "${GREEN}🎉 You're ready to deploy Ultroid!${NC}"
|