# Deployment Files Index

Complete index of all deployment files and their purposes.

## 📚 Documentation

| File | Purpose | Lines |
|------|---------|-------|
| `DEPLOYMENT_GUIDE.md` | Complete step-by-step deployment guide | 1,079 |
| `DEPLOYMENT_TASKS.md` | Detailed 71-task checklist | 561 |
| `DEPLOYMENT_CHECKLIST.md` | Interactive deployment checklist | 204 |
| `DEPLOYMENT_SUMMARY.md` | Deployment package summary | - |
| `ACCESS_EDGE_ENFORCEMENT_RUNBOOK.md` | RPC/API-key edge enforcement for protected lanes | - |
| `QUICK_DEPLOY.md` | Quick command reference | - |
| `README.md` | Documentation overview | - |
| `INDEX.md` | This file | - |

## 🔧 Scripts

| Script | Purpose | Executable |
|--------|---------|------------|
| `scripts/deploy-lxc.sh` | Automated LXC container setup | ✅ |
| `scripts/build-all.sh` | Build all applications | ✅ |
| `scripts/install-services.sh` | Install systemd service files | ✅ |
| `scripts/setup-nginx.sh` | Configure Nginx | ✅ |
| `scripts/setup-cloudflare-tunnel.sh` | Setup Cloudflare Tunnel | ✅ |
| `scripts/setup-firewall.sh` | Configure UFW firewall | ✅ |
| `scripts/setup-fail2ban.sh` | Configure Fail2ban | ✅ |
| `scripts/setup-backup.sh` | Setup backup system | ✅ |
| `scripts/setup-health-check.sh` | Setup health monitoring | ✅ |
| `scripts/verify-deployment.sh` | Verify deployment | ✅ |
| `../scripts/render-rpc-access-gate-nginx.sh` | Render lane-specific nginx gate configs for `2101` / `2102` / `2103` | ✅ |
| `../scripts/install-rpc-access-gate-nginx-via-ssh.sh` | Dry-run-first remote installer for rendered RPC gate configs | ✅ |
| `scripts/full-deploy.sh` | Full automated deployment | ✅ |

## ⚙️ Configuration Files

### Nginx
- `nginx/explorer.conf` - Complete Nginx reverse proxy configuration
- `common/nginx-rpc-api-key-gate.conf` - Example auth-gated RPC upstream template
- `../scripts/render-rpc-access-gate-nginx.sh` - Concrete renderer for auth-gated RPC upstream configs

### Cloudflare
- `cloudflare/tunnel-config.yml` - Cloudflare Tunnel configuration template

### Systemd Services
- `systemd/explorer-indexer.service` - Indexer service file
- `systemd/explorer-api.service` - API service file
- `systemd/solacescanscout-frontend.service` - Next frontend service file
- `systemd/cloudflared.service` - Cloudflare Tunnel service file

### Fail2ban
- `fail2ban/nginx.conf` - Nginx filter configuration
- `fail2ban/jail.local` - Jail configuration

### Environment
- `ENVIRONMENT_TEMPLATE.env` - Environment variables template

### Docker
- `docker-compose.yml` - Docker Compose for infrastructure services

### Kubernetes
- `kubernetes/indexer-deployment.yaml` - Kubernetes deployment example

## 📋 Usage Guide

### For First-Time Deployment

1. **Read**: `DEPLOYMENT_GUIDE.md` - Complete walkthrough
2. **Track**: `DEPLOYMENT_TASKS.md` - Follow 71 tasks
3. **Check**: `DEPLOYMENT_CHECKLIST.md` - Mark completed items
4. **Reference**: `QUICK_DEPLOY.md` - Quick commands

### For Automated Deployment

```bash
# Full automated deployment
sudo ./deployment/scripts/full-deploy.sh

# Or step-by-step
./deployment/scripts/deploy-lxc.sh
./deployment/scripts/build-all.sh
./deployment/scripts/install-services.sh
./deployment/scripts/setup-nginx.sh
./deployment/scripts/setup-cloudflare-tunnel.sh
```

### For Verification

```bash
# Verify deployment
./deployment/scripts/verify-deployment.sh
```

## 🗂️ File Organization

```
deployment/
├── Documentation (7 files)
│   ├── DEPLOYMENT_GUIDE.md
│   ├── DEPLOYMENT_TASKS.md
│   ├── DEPLOYMENT_CHECKLIST.md
│   ├── DEPLOYMENT_SUMMARY.md
│   ├── QUICK_DEPLOY.md
│   ├── README.md
│   └── INDEX.md
│
├── Scripts (11 files)
│   └── scripts/*.sh
│
├── Configuration (10 files)
│   ├── nginx/explorer.conf
│   ├── cloudflare/tunnel-config.yml
│   ├── systemd/*.service (4 files)
│   ├── fail2ban/*.conf (2 files)
│   ├── ENVIRONMENT_TEMPLATE.env
│   └── docker-compose.yml
│
└── Kubernetes (1 file)
    └── kubernetes/indexer-deployment.yaml
```

## ✅ Quick Reference

### Essential Commands

```bash
# Build applications
./deployment/scripts/build-all.sh

# Install services
sudo ./deployment/scripts/install-services.sh
sudo systemctl enable explorer-indexer explorer-api solacescanscout-frontend
sudo systemctl start explorer-indexer explorer-api solacescanscout-frontend

# Setup Nginx
sudo ./deployment/scripts/setup-nginx.sh

# Setup Cloudflare Tunnel
sudo ./deployment/scripts/setup-cloudflare-tunnel.sh

# Verify deployment
./deployment/scripts/verify-deployment.sh
```

### Service Management

```bash
# Check status
systemctl status explorer-indexer explorer-api solacescanscout-frontend

# View logs
journalctl -u explorer-api -f

# Restart service
systemctl restart explorer-api
```

### Health Checks

```bash
# API health
curl http://localhost:8080/health

# Through Nginx
curl http://localhost/api/health

# Through Cloudflare
curl https://explorer.d-bis.org/api/health
```

## 📊 Statistics

- **Total Files**: 28
- **Documentation**: 7 files (1,844+ lines)
- **Scripts**: 11 files (all executable)
- **Configuration**: 10 files
- **Total Tasks**: 71
- **Estimated Deployment Time**: 6-8 hours

## 🎯 Deployment Paths

### Path 1: Full Automated
```bash
sudo ./deployment/scripts/full-deploy.sh
```

### Path 2: Step-by-Step Manual
1. Follow `DEPLOYMENT_GUIDE.md`
2. Use `DEPLOYMENT_TASKS.md` for task list
3. Check off in `DEPLOYMENT_CHECKLIST.md`

### Path 3: Hybrid (Recommended)
1. Run automated scripts for setup
2. Manual configuration for critical steps
3. Verify with `verify-deployment.sh`

---

**All deployment files are ready and documented!**
