mirror of
https://github.com/wahyd4/you-music.git
synced 2026-08-09 05:06:44 +10:00
93 lines
2.1 KiB
Bash
Executable File
93 lines
2.1 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
|
|
|
|
# Check if uv is installed
|
|
if ! command -v uv &> /dev/null; then
|
|
echo "Installing uv..."
|
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
export PATH="$HOME/.cargo/bin:$PATH"
|
|
fi
|
|
|
|
if [ ! -d ".venv" ]; then
|
|
uv venv --python 3.13
|
|
fi
|
|
|
|
uv sync
|
|
|
|
# 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
|