83 lines
2.1 KiB
Bash
83 lines
2.1 KiB
Bash
#!/bin/bash
|
|
|
|
# BestCDN Installation Script
|
|
|
|
echo "BestCDN Installation Script"
|
|
echo "=========================="
|
|
|
|
# Check if Python 3 is installed
|
|
if ! command -v python3 &> /dev/null; then
|
|
echo "Error: Python 3 is not installed. Please install Python 3.7+ first."
|
|
exit 1
|
|
fi
|
|
|
|
echo "✓ Python 3 found"
|
|
|
|
# Create virtual environment
|
|
echo "Creating virtual environment..."
|
|
python3 -m venv venv
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Error: Failed to create virtual environment"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✓ Virtual environment created"
|
|
|
|
# Activate virtual environment
|
|
echo "Activating virtual environment..."
|
|
source venv/bin/activate
|
|
|
|
# Upgrade pip
|
|
echo "Upgrading pip..."
|
|
pip install --upgrade pip
|
|
|
|
# Install dependencies
|
|
echo "Installing dependencies..."
|
|
pip install -r requirements.txt
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Error: Failed to install dependencies"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✓ Dependencies installed"
|
|
|
|
# Create necessary directories
|
|
echo "Creating directories..."
|
|
mkdir -p ip_lists results logs
|
|
|
|
echo "✓ Directories created"
|
|
|
|
# Create example IP list files
|
|
echo "Creating example IP list files..."
|
|
mkdir -p ip_lists
|
|
|
|
# Create example files if they don't exist
|
|
for provider in cloudflare fastly edgeone esa; do
|
|
if [ ! -f "ip_lists/${provider}.txt" ]; then
|
|
echo "# ${provider} IP list - Replace with your actual IPs" > "ip_lists/${provider}.txt"
|
|
echo "# Example: 192.168.1.1" >> "ip_lists/${provider}.txt"
|
|
echo "# Example: 10.0.0.0/24" >> "ip_lists/${provider}.txt"
|
|
echo "Created example file: ip_lists/${provider}.txt"
|
|
else
|
|
echo "File already exists: ip_lists/${provider}.txt"
|
|
fi
|
|
done
|
|
|
|
echo ""
|
|
echo "Installation completed successfully!"
|
|
echo ""
|
|
echo "To use BestCDN:"
|
|
echo "1. Activate the virtual environment:"
|
|
echo " source venv/bin/activate"
|
|
echo ""
|
|
echo "2. Edit IP list files in ip_lists/ directory"
|
|
echo ""
|
|
echo "3. Run the example:"
|
|
echo " python3 example_usage.py"
|
|
echo ""
|
|
echo "For more information, see README.md"
|
|
echo ""
|
|
echo "IMPORTANT: Always activate the virtual environment before running:"
|
|
echo " source venv/bin/activate" |