3.6 KiB
3.6 KiB
🚀 Quick Start - Proxmox Deployment
Prerequisites Checklist
- Proxmox server with Ubuntu VM/Container
- Domain name pointing to server IP
- SSH access to server
- Application files (cloned or uploaded)
Quick Deployment Steps
1. Access Your Server
# SSH into your Proxmox VM/Container
ssh root@your-server-ip
2. Run Automated Setup
# Clone or upload your repository
cd /opt
git clone <your-repo-url> institutional_trader
# OR upload files manually
# Run deployment script
cd institutional_trader
chmod +x deploy.sh
sudo bash deploy.sh
3. Configure Environment Variables
Backend (/opt/institutional_trader/backend/.env):
NODE_ENV=production
PORT=3000
# Remote PostgreSQL Database
USE_LOCAL_DB=true
LOCAL_DB_HOST=100.121.163.23
LOCAL_DB_PORT=5432
LOCAL_DB_USER=postgres
LOCAL_DB_PASSWORD=your_postgres_password
LOCAL_DB_NAME=institutional_trader
# OR use DATABASE_URL format:
# DATABASE_URL=postgresql://postgres:your_password@100.121.163.23:5432/institutional_trader
# CORS Configuration
CORS_ORIGIN=https://yourdomain.com
JWT_SECRET=your_secret_key_32_chars_min
Frontend (/opt/institutional_trader/frontend/.env.production):
VITE_API_URL=https://api.yourdomain.com
VITE_WS_URL=wss://api.yourdomain.com
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_anon_key
4. Create Systemd Services
# Copy service files from PROXMOX_DEPLOYMENT.md section 6
# Or create manually:
# Backend service
sudo nano /etc/systemd/system/institutional-trader-backend.service
# (Paste configuration from deployment guide)
# Python service (if using)
sudo nano /etc/systemd/system/institutional-trader-python.service
# (Paste configuration from deployment guide)
# Enable and start
sudo systemctl daemon-reload
sudo systemctl enable institutional-trader-backend
sudo systemctl start institutional-trader-backend
5. Configure Nginx
# Copy nginx config from PROXMOX_DEPLOYMENT.md section 7
sudo nano /etc/nginx/sites-available/institutional-trader
# (Paste and customize configuration)
# Enable site
sudo ln -s /etc/nginx/sites-available/institutional-trader /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
6. Set Up SSL
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com -d api.yourdomain.com
7. Set Up Database Access for Friend
Option A: Supabase (Easiest)
- Go to Supabase Dashboard > Settings > Team
- Invite your friend via email
- Share connection details
Option B: PostgreSQL User
# Connect to remote database and run the SQL script
cd /opt/institutional_trader/backend/database
psql -h 100.121.163.23 -p 5432 -U postgres -d institutional_trader < setup_friend_access.sql
# Edit the script first to set username/password!
Verify Deployment
# Check services
sudo systemctl status institutional-trader-backend
sudo systemctl status nginx
# Test database connection
psql -h 100.121.163.23 -p 5432 -U postgres -d institutional_trader
# Test health endpoint
curl https://api.yourdomain.com/health
# Check logs
sudo journalctl -u institutional-trader-backend -f
Common Commands
# Restart services
sudo systemctl restart institutional-trader-backend
sudo systemctl restart institutional-trader-python
sudo systemctl reload nginx
# View logs
sudo journalctl -u institutional-trader-* -f
# Update application
cd /opt/institutional_trader
git pull
cd backend && npm install --production
cd ../frontend && npm run build
sudo systemctl restart institutional-trader-backend
Need Help?
See the full guide: PROXMOX_DEPLOYMENT.md