Files
you-music/setup.sh
T
2025-10-30 14:45:41 +11:00

87 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
# YouMusic Quick Start Script
set -e
echo "🎵 YouMusic Setup"
echo "================="
# Check if Docker is installed
if command -v docker &> /dev/null; then
echo "✅ Docker found"
echo "🐳 Building Docker image..."
docker-compose build
echo "🚀 Starting YouMusic..."
docker-compose up -d
echo ""
echo "✨ YouMusic is running!"
echo "📱 Frontend: http://localhost:8000"
echo "📚 API Docs: http://localhost:8000/docs"
echo ""
echo "To stop: docker-compose down"
echo "To view logs: docker-compose logs -f"
else
echo "⚠️ Docker not found. Installing manually..."
# Check Python
if ! command -v python3 &> /dev/null; then
echo "❌ Python 3 is required but not installed"
exit 1
fi
# Check Node.js
if ! command -v node &> /dev/null; then
echo "❌ Node.js is required but not installed"
exit 1
fi
# Check FFmpeg
if ! command -v ffmpeg &> /dev/null; then
echo "⚠️ FFmpeg not found. Please install it:"
echo " Ubuntu/Debian: sudo apt-get install ffmpeg"
echo " macOS: brew install ffmpeg"
exit 1
fi
echo "✅ All dependencies found"
# Backend setup
echo "🔧 Setting up backend..."
cd backend
if [ ! -d "venv" ]; then
python3 -m venv venv
fi
source venv/bin/activate
pip install -r requirements.txt
# Create data directories
mkdir -p ../data/music ../data/uploads ../data/temp
# Frontend setup
echo "🎨 Setting up frontend..."
cd ../frontend
npm install
npm run build
# Copy frontend build to backend static
mkdir -p ../backend/static
cp -r dist/* ../backend/static/
echo ""
echo "✨ Setup complete!"
echo ""
echo "To start the backend:"
echo " cd backend"
echo " source venv/bin/activate"
echo " uvicorn main:app --reload"
echo ""
echo "Then visit: http://localhost:8000"
fi