# Quick Start Guide

Get the SMOM-DBIS-138 blockchain network running on Proxmox VE in minutes.

## Prerequisites

- Proxmox VE 7.0+ installed
- Root access to Proxmox host
- At least 64GB RAM and 500GB storage
- Network connectivity

## Quick Setup

### 1. Copy Files to Proxmox Host

```bash
# On your local machine
scp -r smom-dbis-138-proxmox root@your-proxmox-host:/opt/
```

### 2. Run Setup Script

```bash
# SSH into Proxmox host
ssh root@your-proxmox-host

# Run setup
cd /opt/smom-dbis-138-proxmox
./setup.sh
```

### 3. Configure

Edit the configuration files:

```bash
nano config/proxmox.conf
# Set: PROXMOX_HOST, PROXMOX_USER, PROXMOX_TOKEN_SECRET, etc.

nano config/network.conf
# Review network settings (defaults usually work)
```

### 4. Deploy

```bash
# Deploy everything
./scripts/deployment/deploy-all.sh
```

### 5. Copy Project Files

After containers are created, copy configuration from your smom-dbis-138 project:

```bash
# Set source project path
SOURCE="/path/to/smom-dbis-138"

# Copy genesis and configs
for vmid in 1000 1001 1002 1003 1004 1500 1501 1502 1503 2500 2501 2502; do
    pct push $vmid "$SOURCE/config/genesis.json" /etc/besu/genesis.json
    pct push $vmid "$SOURCE/config/permissions-nodes.toml" /etc/besu/permissions-nodes.toml
done

# Copy validator keys
for vmid in 1000 1001 1002 1003 1004; do
    pct push $vmid "$SOURCE/keys/validators/" /keys/validators/
done

# Update static nodes
./scripts/network/update-static-nodes.sh

# Start services
for vmid in 1000 1001 1002 1003 1004 1500 1501 1502 1503 2500 2501 2502; do
    pct exec $vmid -- systemctl start besu-validator.service 2>/dev/null || \
    pct exec $vmid -- systemctl start besu-sentry.service 2>/dev/null || \
    pct exec $vmid -- systemctl start besu-rpc.service 2>/dev/null
done
```

### 6. Verify

```bash
# Check container status
pct list | grep -E "1000|1001|1002|1003|1004|1500|1501|1502|1503|2500|2501|2502"

# Check RPC endpoint
curl -X POST http://192.168.11.250:8545 \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'

# Check metrics
curl http://192.168.11.250:9545/metrics | head -20
```

## Common Commands

```bash
# View logs
pct exec 1000 -- journalctl -u besu-validator -f

# Restart service
pct exec 1000 -- systemctl restart besu-validator

# Backup all
./scripts/backup/backup-all.sh

# Upgrade all nodes
./scripts/upgrade/upgrade-all.sh 24.1.0
```

## Need Help?

- Full documentation: [DEPLOYMENT.md](DEPLOYMENT.md)
- Troubleshooting: [TROUBLESHOOTING.md](TROUBLESHOOTING.md)
- Main README: [../README.md](/docs/01-getting-started/README.md)

