init testarena backend service
This commit is contained in:
44
asf-pc-server/testarena_pc_backend/deploy.sh
Normal file
44
asf-pc-server/testarena_pc_backend/deploy.sh
Normal file
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
# TestArena Deployment Script
|
||||
# Run this script with sudo: sudo ./deploy.sh
|
||||
|
||||
set -e
|
||||
|
||||
echo "🚀 Starting TestArena Deployment..."
|
||||
|
||||
# 1. Install Dependencies
|
||||
echo "📦 Installing dependencies..."
|
||||
apt-get update
|
||||
apt-get install -y nginx python3-pip python3-venv
|
||||
|
||||
# 2. Set up Python Virtual Environment
|
||||
echo "🐍 Setting up Python environment..."
|
||||
python3 -m venv venv
|
||||
source venv/bin/activate
|
||||
pip install fastapi uvicorn sqlalchemy
|
||||
|
||||
# 3. Configure Nginx
|
||||
echo "🌐 Configuring Nginx..."
|
||||
cp nginx/testarena.conf /etc/nginx/sites-available/testarena
|
||||
ln -sf /etc/nginx/sites-available/testarena /etc/nginx/sites-enabled/
|
||||
rm -f /etc/nginx/sites-enabled/default
|
||||
|
||||
# 4. Create Data Directory
|
||||
echo "📁 Creating data directory..."
|
||||
mkdir -p /home/asf/testarena
|
||||
chown -R asf:asf /home/asf/testarena
|
||||
chmod -R 755 /home/asf/testarena
|
||||
|
||||
# 5. Restart Nginx
|
||||
echo "🔄 Restarting Nginx..."
|
||||
nginx -t
|
||||
systemctl restart nginx
|
||||
|
||||
echo "✅ Deployment complete!"
|
||||
echo "--------------------------------------------------"
|
||||
echo "Dashboard: http://asf-server.duckdns.org:8080/"
|
||||
echo "Results: http://asf-server.duckdns.org:8080/results/"
|
||||
echo "--------------------------------------------------"
|
||||
echo "To start the app: source venv/bin/activate && uvicorn testarena_app.main:app --host 0.0.0.0 --port 8000"
|
||||
echo "To start the worker: source venv/bin/activate && python3 -m testarena_app.worker"
|
||||
Reference in New Issue
Block a user