feat: explorer API, wallet, CCIP scripts, and config refresh
- Backend REST/gateway/track routes, analytics, Blockscout proxy paths. - Frontend wallet and liquidity surfaces; MetaMask token list alignment. - Deployment docs, verification scripts, address inventory updates. Check: go build ./... under backend/ (pass). Made-with: Cursor
This commit is contained in:
@@ -1,118 +1,41 @@
|
||||
# Deployment Documentation
|
||||
|
||||
Complete deployment documentation for the ChainID 138 Explorer Platform.
|
||||
Deployment docs for the Chain 138 explorer stack.
|
||||
|
||||
## Documentation Files
|
||||
## Read This First
|
||||
|
||||
### 📘 DEPLOYMENT_GUIDE.md
|
||||
**Complete step-by-step guide** with detailed instructions for:
|
||||
- LXC container setup
|
||||
- Application installation
|
||||
- Database configuration
|
||||
- Nginx reverse proxy setup
|
||||
- Cloudflare DNS, SSL, and Tunnel configuration
|
||||
- Security hardening
|
||||
- Monitoring setup
|
||||
For the current production deployment shape, start with [`LIVE_DEPLOYMENT_MAP.md`](./LIVE_DEPLOYMENT_MAP.md).
|
||||
|
||||
**Use this for**: Full deployment walkthrough
|
||||
That file reflects the live split deployment now in production:
|
||||
|
||||
### 📋 DEPLOYMENT_TASKS.md
|
||||
**Detailed task checklist** with all 71 tasks organized by phase:
|
||||
- Pre-deployment (5 tasks)
|
||||
- Phase 1: LXC Setup (8 tasks)
|
||||
- Phase 2: Application Installation (12 tasks)
|
||||
- Phase 3: Database Setup (10 tasks)
|
||||
- Phase 4: Infrastructure Services (6 tasks)
|
||||
- Phase 5: Application Services (10 tasks)
|
||||
- Phase 6: Nginx Reverse Proxy (9 tasks)
|
||||
- Phase 7: Cloudflare Configuration (18 tasks)
|
||||
- Phase 8: Security Hardening (12 tasks)
|
||||
- Phase 9: Monitoring (8 tasks)
|
||||
- Post-Deployment Verification (13 tasks)
|
||||
- Optional Enhancements (8 tasks)
|
||||
- Next frontend on `127.0.0.1:3000` via `solacescanscout-frontend.service`
|
||||
- explorer config/API on `127.0.0.1:8081` via `explorer-config-api.service`
|
||||
- Blockscout on `127.0.0.1:4000`
|
||||
- token aggregation on `127.0.0.1:3001`
|
||||
- static config assets under `/var/www/html/config`
|
||||
- CCIP relay workers on host `r630-01`, outside VMID `5000`
|
||||
|
||||
**Use this for**: Tracking deployment progress
|
||||
## Current Canonical Deployment Paths
|
||||
|
||||
### ✅ DEPLOYMENT_CHECKLIST.md
|
||||
**Interactive checklist** for tracking deployment completion.
|
||||
- Frontend deploy: [`scripts/deploy-next-frontend-to-vmid5000.sh`](../scripts/deploy-next-frontend-to-vmid5000.sh)
|
||||
- Config deploy: [`scripts/deploy-explorer-config-to-vmid5000.sh`](../scripts/deploy-explorer-config-to-vmid5000.sh)
|
||||
- Explorer config/API deploy: [`scripts/deploy-explorer-ai-to-vmid5000.sh`](../scripts/deploy-explorer-ai-to-vmid5000.sh)
|
||||
- Public health audit: [`scripts/check-explorer-health.sh`](../scripts/check-explorer-health.sh)
|
||||
- Full public smoke: [`check-explorer-e2e.sh`](../../scripts/verify/check-explorer-e2e.sh)
|
||||
|
||||
**Use this for**: Marking off completed items
|
||||
## Legacy And Greenfield Docs
|
||||
|
||||
### ⚡ QUICK_DEPLOY.md
|
||||
**Quick reference** with essential commands and common issues.
|
||||
The rest of this directory is still useful, but it should be treated as legacy scaffold or greenfield reference unless it explicitly matches the live split architecture above.
|
||||
|
||||
**Use this for**: Quick command lookup during deployment
|
||||
- `DEPLOYMENT_GUIDE.md`: older full-stack walkthrough
|
||||
- `DEPLOYMENT_TASKS.md`: older monolithic deployment checklist
|
||||
- `DEPLOYMENT_CHECKLIST.md`: older tracking checklist
|
||||
- `QUICK_DEPLOY.md`: command reference for the legacy package
|
||||
|
||||
## Configuration Files
|
||||
## Practical Rule
|
||||
|
||||
### nginx/explorer.conf
|
||||
Complete Nginx configuration with:
|
||||
- Rate limiting
|
||||
- SSL/TLS settings
|
||||
- Reverse proxy configuration
|
||||
- Security headers
|
||||
- Caching rules
|
||||
- WebSocket support
|
||||
|
||||
### cloudflare/tunnel-config.yml
|
||||
Cloudflare Tunnel configuration template.
|
||||
|
||||
### scripts/deploy-lxc.sh
|
||||
Automated deployment script for initial setup.
|
||||
|
||||
## Deployment Architecture
|
||||
|
||||
```
|
||||
Internet
|
||||
↓
|
||||
Cloudflare (DNS, SSL, WAF, CDN)
|
||||
↓
|
||||
Cloudflare Tunnel (optional)
|
||||
↓
|
||||
LXC Container
|
||||
├── Nginx (Reverse Proxy)
|
||||
│ ├── → Frontend (Port 3000)
|
||||
│ └── → API (Port 8080)
|
||||
├── PostgreSQL + TimescaleDB
|
||||
├── Elasticsearch
|
||||
├── Redis
|
||||
└── Application Services
|
||||
├── Indexer
|
||||
├── API Server
|
||||
└── Frontend Server
|
||||
```
|
||||
|
||||
## Quick Start
|
||||
|
||||
1. **Read the deployment guide**: `DEPLOYMENT_GUIDE.md`
|
||||
2. **Use the task list**: `DEPLOYMENT_TASKS.md`
|
||||
3. **Track progress**: `DEPLOYMENT_CHECKLIST.md`
|
||||
4. **Quick reference**: `QUICK_DEPLOY.md`
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Proxmox VE with LXC support
|
||||
- Cloudflare account with domain
|
||||
- 16GB+ RAM, 4+ CPU cores, 100GB+ storage
|
||||
- Ubuntu 22.04 LTS template
|
||||
- SSH access to Proxmox host
|
||||
|
||||
## Estimated Time
|
||||
|
||||
- **First deployment**: 6-8 hours
|
||||
- **Subsequent deployments**: 2-3 hours
|
||||
- **Updates**: 30-60 minutes
|
||||
|
||||
## Support
|
||||
|
||||
For issues during deployment:
|
||||
1. Check `QUICK_DEPLOY.md` for common issues
|
||||
2. Review service logs: `journalctl -u <service-name> -f`
|
||||
3. Check Nginx logs: `tail -f /var/log/nginx/explorer-error.log`
|
||||
4. Verify Cloudflare tunnel: `systemctl status cloudflared`
|
||||
|
||||
## Version
|
||||
|
||||
**Version**: 1.0.0
|
||||
**Last Updated**: 2024-12-23
|
||||
If the question is "how do we update production today?", use:
|
||||
|
||||
1. [`LIVE_DEPLOYMENT_MAP.md`](./LIVE_DEPLOYMENT_MAP.md)
|
||||
2. the specific deploy script for the component being changed
|
||||
3. the public health scripts for verification
|
||||
|
||||
Reference in New Issue
Block a user