Complete markdown files cleanup and organization

- Organized 252 files across project
- Root directory: 187 → 2 files (98.9% reduction)
- Moved configuration guides to docs/04-configuration/
- Moved troubleshooting guides to docs/09-troubleshooting/
- Moved quick start guides to docs/01-getting-started/
- Moved reports to reports/ directory
- Archived temporary files
- Generated comprehensive reports and documentation
- Created maintenance scripts and guides

All files organized according to established standards.
This commit is contained in:
defiQUG
2026-01-06 01:46:25 -08:00
parent 1edcec953c
commit cb47cce074
1327 changed files with 217220 additions and 801 deletions

View File

@@ -0,0 +1,214 @@
# Central Nginx Routing Setup - Complete
**Last Updated:** 2025-12-27
**Document Version:** 1.0
**Status:** Active Documentation
---
## Architecture
```
Internet → Cloudflare → cloudflared (VMID 102) → Nginx Proxy Manager (VMID 105:80) → Internal Services
```
All Cloudflare tunnel traffic now routes through a single Nginx instance (VMID 105) which then routes to internal services based on hostname.
---
## Configuration Complete
### ✅ Nginx Proxy Manager (VMID 105)
**IP Address**: `192.168.11.21`
**Configuration File**: `/data/nginx/custom/http.conf`
**Status**: Active and running
**Services Configured**:
| Domain | Routes To | Service IP | Service Port |
|--------|-----------|------------|--------------|
| `explorer.d-bis.org` | `http://192.168.11.140:80` | 192.168.11.140 | 80 |
| `rpc-http-pub.d-bis.org` | `https://192.168.11.252:443` | 192.168.11.252 | 443 |
| `rpc-ws-pub.d-bis.org` | `https://192.168.11.252:443` | 192.168.11.252 | 443 |
| `rpc-http-prv.d-bis.org` | `https://192.168.11.251:443` | 192.168.11.251 | 443 |
| `rpc-ws-prv.d-bis.org` | `https://192.168.11.251:443` | 192.168.11.251 | 443 |
| `dbis-admin.d-bis.org` | `http://192.168.11.130:80` | 192.168.11.130 | 80 |
| `dbis-api.d-bis.org` | `http://192.168.11.290:3000` | 192.168.11.290 | 3000 |
| `dbis-api-2.d-bis.org` | `http://192.168.11.291:3000` | 192.168.11.291 | 3000 |
| `mim4u.org` | `http://192.168.11.19:80` | 192.168.11.19 | 80 |
| `www.mim4u.org` | `http://192.168.11.19:80` | 192.168.11.19 | 80 |
---
## Cloudflare Tunnel Configuration
### ⚠️ Action Required: Update Cloudflare Dashboard
Since the tunnel uses token-based configuration, you need to update the tunnel ingress rules in the Cloudflare dashboard:
1. Go to: https://one.dash.cloudflare.com/
2. Navigate to: **Zero Trust****Networks****Tunnels**
3. Select your tunnel (ID: `b02fe1fe-cb7d-484e-909b-7cc41298ebe8`)
4. Click **Configure****Public Hostnames**
5. Update all hostnames to route to: `http://192.168.11.21:80`
### Required Tunnel Ingress Rules
All hostnames should route to the central Nginx:
```yaml
ingress:
# Explorer
- hostname: explorer.d-bis.org
service: http://192.168.11.21:80
# RPC Public
- hostname: rpc-http-pub.d-bis.org
service: http://192.168.11.21:80
- hostname: rpc-ws-pub.d-bis.org
service: http://192.168.11.21:80
# RPC Private
- hostname: rpc-http-prv.d-bis.org
service: http://192.168.11.21:80
- hostname: rpc-ws-prv.d-bis.org
service: http://192.168.11.21:80
# DBIS Services
- hostname: dbis-admin.d-bis.org
service: http://192.168.11.21:80
- hostname: dbis-api.d-bis.org
service: http://192.168.11.21:80
- hostname: dbis-api-2.d-bis.org
service: http://192.168.11.21:80
# Miracles In Motion
- hostname: mim4u.org
service: http://192.168.11.21:80
- hostname: www.mim4u.org
service: http://192.168.11.21:80
# Catch-all
- service: http_status:404
```
---
## Testing
### Test Nginx Routing Locally
```bash
# Test Explorer
curl -H "Host: explorer.d-bis.org" http://192.168.11.21/
# Test RPC Public HTTP
curl -H "Host: rpc-http-pub.d-bis.org" http://192.168.11.21/ \
-X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
```
### Test Through Cloudflare (After Tunnel Update)
```bash
# Test Explorer
curl https://explorer.d-bis.org/
# Test RPC Public
curl -X POST https://rpc-http-pub.d-bis.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
```
---
## Benefits
1. **Single Point of Configuration**: All routing logic in one place (VMID 105)
2. **Simplified Management**: No need to update multiple Nginx instances
3. **Centralized Logging**: All traffic logs in one location
4. **Easier Troubleshooting**: Single point to check routing issues
5. **Consistent Configuration**: All services follow the same routing pattern
---
## Maintenance
### View Nginx Configuration
```bash
ssh root@192.168.11.12 "pct exec 105 -- cat /data/nginx/custom/http.conf"
```
### Reload Nginx Configuration
```bash
ssh root@192.168.11.12 "pct exec 105 -- systemctl restart npm"
```
### Add New Service
1. Edit `/data/nginx/custom/http.conf` on VMID 105
2. Add new `server` block with appropriate `server_name` and `proxy_pass`
3. Test: `nginx -t`
4. Reload: `systemctl restart npm`
5. Update Cloudflare tunnel to route new hostname to `http://192.168.11.21:80`
---
## Troubleshooting
### Service Not Routing Correctly
1. Check Nginx configuration: `pct exec 105 -- nginx -t`
2. Check service status: `pct exec 105 -- systemctl status npm`
3. Check Nginx logs: `pct exec 105 -- tail -f /data/logs/fallback_error.log`
4. Verify internal service is accessible: `curl http://<service-ip>:<port>`
### Cloudflare Tunnel Not Connecting
1. Check tunnel status: `pct exec 102 -- systemctl status cloudflared`
2. Verify tunnel configuration in Cloudflare dashboard
3. Check tunnel logs: `pct exec 102 -- journalctl -u cloudflared -n 50`
---
## Next Steps
1. ✅ Nginx configuration deployed
2.**Update Cloudflare tunnel configuration** (see above)
3. ⏳ Test all endpoints after tunnel update
4. ⏳ Monitor logs for any routing issues
---
**Configuration File Location**: `/data/nginx/custom/http.conf` on VMID 105
---
## Related Documentation
> **Master Reference:** For a consolidated view of all Cloudflare routing, see **[CLOUDFLARE_ROUTING_MASTER.md](CLOUDFLARE_ROUTING_MASTER.md)** ⭐⭐⭐.
### Setup Guides
- **[../04-configuration/cloudflare/CLOUDFLARE_ZERO_TRUST_GUIDE.md](../04-configuration/cloudflare/CLOUDFLARE_ZERO_TRUST_GUIDE.md)** ⭐⭐⭐ - Complete Cloudflare Zero Trust setup
- **[../04-configuration/cloudflare/CLOUDFLARE_TUNNEL_INSTALLATION.md](../04-configuration/cloudflare/CLOUDFLARE_TUNNEL_INSTALLATION.md)** ⭐⭐ - Tunnel installation procedures
- **[../04-configuration/cloudflare/CLOUDFLARE_DNS_TO_CONTAINERS.md](../04-configuration/cloudflare/CLOUDFLARE_DNS_TO_CONTAINERS.md)** ⭐⭐⭐ - DNS mapping to containers
### Architecture Documents
- **[CLOUDFLARE_TUNNEL_ROUTING_ARCHITECTURE.md](CLOUDFLARE_TUNNEL_ROUTING_ARCHITECTURE.md)** ⭐⭐⭐ - Complete Cloudflare tunnel routing architecture
- **[CLOUDFLARE_NGINX_INTEGRATION.md](CLOUDFLARE_NGINX_INTEGRATION.md)** ⭐⭐ - Cloudflare + NGINX integration
- **[NGINX_ARCHITECTURE_RPC.md](NGINX_ARCHITECTURE_RPC.md)** ⭐⭐ - NGINX RPC architecture
---
**Last Updated:** 2025-12-27
**Document Version:** 1.0
**Review Cycle:** Quarterly

View File

@@ -0,0 +1,16 @@
# Cloudflare Tunnel Configuration Check
# VMID 102 (cloudflared) - IP changed: 192.168.11.9 → 192.168.11.34
The cloudflared container itself doesn't need config changes (it's the tunnel endpoint).
However, check:
1. Cloudflare Dashboard Tunnel Configuration:
- If any ingress rules reference 192.168.11.9 directly, update to 192.168.11.34
- Most likely, routes go to Nginx Proxy Manager (192.168.11.26), which is correct
2. Internal Service Routes:
- If cloudflared routes directly to services that changed IPs, update those routes
- Check tunnel config files in VMID 102 container
To check:
ssh root@192.168.11.12 "pct exec 102 -- cat /etc/cloudflared/config.yml"

View File

@@ -0,0 +1,12 @@
# Nginx Proxy Manager Routes That May Need Updates
# Check these routes in the Nginx Proxy Manager web UI (VMID 105: http://192.168.11.26:81)
Routes that may reference changed IPs:
- omada routes: Check if any route references 192.168.11.20 → Update to 192.168.11.30
- gitea routes: Check if any route references 192.168.11.18 → Update to 192.168.11.31
- firefly routes: Check if any route references 192.168.11.7 → Update to 192.168.11.35
To update:
1. Access Nginx Proxy Manager: http://192.168.11.26:81
2. Check each Proxy Host configuration
3. Update Forward Hostname/IP if it references old IPs

View File

@@ -0,0 +1,273 @@
#!/bin/bash
# Setup Central Nginx Routing for All Services
# Routes all Cloudflare tunnel traffic through VMID 105 to internal services
set -e
NGINX_VMID=105
NGINX_IP=192.168.11.21
PROXMOX_HOST=192.168.11.12
# Colors
GREEN='\033[0;32m'
BLUE='\033[0;34m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m'
log_info() { echo -e "${BLUE}[INFO]${NC} $1"; }
log_success() { echo -e "${GREEN}[✓]${NC} $1"; }
log_warn() { echo -e "${YELLOW}[⚠]${NC} $1"; }
log_error() { echo -e "${RED}[✗]${NC} $1"; }
echo ""
log_info "═══════════════════════════════════════════════════════════"
log_info " SETTING UP CENTRAL NGINX ROUTING (VMID $NGINX_VMID)"
log_info "═══════════════════════════════════════════════════════════"
echo ""
# Check container status
log_info "Checking container status..."
CONTAINER_STATUS=$(ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no root@${PROXMOX_HOST} \
"pct status $NGINX_VMID 2>/dev/null | awk '{print \$2}'" || echo "unknown")
if [ "$CONTAINER_STATUS" != "running" ]; then
log_error "Container $NGINX_VMID is not running (status: $CONTAINER_STATUS)"
exit 1
fi
log_success "Container $NGINX_VMID is running"
# Check Nginx installation
log_info "Checking Nginx installation..."
if ! ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no root@${PROXMOX_HOST} \
"pct exec $NGINX_VMID -- which nginx >/dev/null 2>&1"; then
log_error "Nginx is not installed on VMID $NGINX_VMID"
exit 1
fi
log_success "Nginx is installed"
# Create Nginx configuration
log_info "Creating Nginx configuration..."
ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no root@${PROXMOX_HOST} \
"pct exec $NGINX_VMID -- bash" << 'NGINX_EOF'
cat > /etc/nginx/sites-available/all-services << 'CONFIG_EOF'
# Central Nginx Configuration for All Services
# VMID 105 - Routes all Cloudflare tunnel traffic to internal services
# Generated: $(date)
# Explorer / Blockscout
server {
listen 80;
server_name explorer.d-bis.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Increase timeouts for long-running requests
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
location / {
proxy_pass http://192.168.11.140:80;
}
}
# RPC Public HTTP
server {
listen 80;
server_name rpc-http-pub.d-bis.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Increase timeouts for RPC calls
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
location / {
proxy_pass https://192.168.11.252:443;
proxy_ssl_verify off;
}
}
# RPC Public WebSocket
server {
listen 80;
server_name rpc-ws-pub.d-bis.org;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Increase timeouts for WebSocket connections
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
location / {
proxy_pass https://192.168.11.252:443;
proxy_ssl_verify off;
}
}
# RPC Private HTTP
server {
listen 80;
server_name rpc-http-prv.d-bis.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Increase timeouts for RPC calls
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
location / {
proxy_pass https://192.168.11.251:443;
proxy_ssl_verify off;
}
}
# RPC Private WebSocket
server {
listen 80;
server_name rpc-ws-prv.d-bis.org;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Increase timeouts for WebSocket connections
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
location / {
proxy_pass https://192.168.11.251:443;
proxy_ssl_verify off;
}
}
# DBIS Admin Frontend
server {
listen 80;
server_name dbis-admin.d-bis.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
location / {
proxy_pass http://192.168.11.130:80;
}
}
# DBIS API Primary
server {
listen 80;
server_name dbis-api.d-bis.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
location / {
proxy_pass http://192.168.11.290:3000;
}
}
# DBIS API Secondary
server {
listen 80;
server_name dbis-api-2.d-bis.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
location / {
proxy_pass http://192.168.11.291:3000;
}
}
# Miracles In Motion
server {
listen 80;
server_name mim4u.org www.mim4u.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
location / {
proxy_pass http://192.168.11.19:80;
}
}
# Default catch-all
server {
listen 80 default_server;
server_name _;
location / {
return 404 "Service not found for host: $host";
}
}
CONFIG_EOF
# Enable the site
log_info "Enabling Nginx site..."
ln -sf /etc/nginx/sites-available/all-services /etc/nginx/sites-enabled/all-services
# Remove default site if it conflicts
rm -f /etc/nginx/sites-enabled/default 2>/dev/null || true
# Test configuration
log_info "Testing Nginx configuration..."
if nginx -t 2>&1; then
log_success "Nginx configuration is valid"
else
log_error "Nginx configuration test failed"
exit 1
fi
# Reload Nginx
log_info "Reloading Nginx..."
systemctl reload nginx
log_success "Nginx reloaded successfully"
NGINX_EOF
log_success "Nginx configuration deployed to VMID $NGINX_VMID"
echo ""
log_info "═══════════════════════════════════════════════════════════"
log_info " NGINX CONFIGURATION COMPLETE"
log_info "═══════════════════════════════════════════════════════════"
echo ""
log_info "Next: Update Cloudflare tunnel to route all traffic to:"
log_info " http://${NGINX_IP}:80"
echo ""

View File

@@ -0,0 +1,12 @@
Backup Summary
Generated: Mon Jan 5 14:36:57 PST 2026
Total containers to convert: 0
Conversions:
Backup files:
1 config files backed up
Rollback script: /home/intlc/projects/proxmox/backups/ip_conversion_20260105_143656/rollback-ip-changes.sh

View File

@@ -0,0 +1,9 @@
#!/bin/bash
# Rollback script for IP changes
# Generated automatically - DO NOT EDIT MANUALLY
set -euo pipefail
echo "=== Rolling Back IP Changes ==="
echo ""

View File

@@ -0,0 +1,20 @@
Backup Summary
Generated: Mon Jan 5 14:37:25 PST 2026
Total containers to convert: 9
Conversions:
192.168.11.10:3501:192.168.11.14:192.168.11.28:ccip-monitor-1:ml110
192.168.11.10:3500:192.168.11.15:192.168.11.29:oracle-publisher-1:ml110
192.168.11.12:103:192.168.11.20:192.168.11.30:omada:r630-02
192.168.11.12:104:192.168.11.18:192.168.11.31:gitea:r630-02
192.168.11.12:100:192.168.11.4:192.168.11.32:proxmox-mail-gateway:r630-02
192.168.11.12:101:192.168.11.6:192.168.11.33:proxmox-datacenter-manager:r630-02
192.168.11.12:102:192.168.11.9:192.168.11.34:cloudflared:r630-02
192.168.11.12:6200:192.168.11.7:192.168.11.35:firefly-1:r630-02
192.168.11.12:7811:N/A:192.168.11.36:mim-api-1:r630-02
Backup files:
9 config files backed up
Rollback script: /home/intlc/projects/proxmox/backups/ip_conversion_20260105_143709/rollback-ip-changes.sh

View File

@@ -0,0 +1,12 @@
arch: amd64
cores: 2
features: nesting=1,keyctl=1
hostname: oracle-publisher-1
memory: 2048
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:AB:6C:CE,ip=dhcp,type=veth
onboot: 1
ostype: ubuntu
rootfs: local-lvm:vm-3500-disk-0,size=20G
swap: 512
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,12 @@
arch: amd64
cores: 2
features: nesting=1,keyctl=1
hostname: ccip-monitor-1
memory: 2048
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:EE:A6:EC,ip=dhcp,type=veth
onboot: 1
ostype: ubuntu
rootfs: local-lvm:vm-3501-disk-0,size=20G
swap: 512
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,14 @@
arch: amd64
cores: 2
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Proxmox-Mail-Gateway LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/&#x2615;-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
features: nesting=1,keyctl=1
hostname: proxmox-mail-gateway
memory: 4096
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:7D:3C:CD,ip=dhcp,type=veth
onboot: 1
ostype: debian
rootfs: thin1-r630-02:vm-100-disk-0
swap: 512
tags: community-script;mail
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,14 @@
arch: amd64
cores: 2
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Proxmox-Datacenter-Manager LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/&#x2615;-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
features: nesting=1,keyctl=1
hostname: proxmox-datacenter-manager
memory: 2048
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:F8:94:5E,ip=dhcp,type=veth
onboot: 1
ostype: debian
rootfs: thin1-r630-02:vm-101-disk-0
swap: 512
tags: community-script;datacenter
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,14 @@
arch: amd64
cores: 1
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Cloudflared LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/&#x2615;-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
features: nesting=1,keyctl=1
hostname: cloudflared
memory: 512
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:B3:46:B7,ip=dhcp,type=veth
onboot: 1
ostype: debian
rootfs: thin1-r630-02:vm-102-disk-0
swap: 512
tags: cloudflare;community-script;network
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,14 @@
arch: amd64
cores: 2
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Omada LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/&#x2615;-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
features: nesting=1,keyctl=1
hostname: omada
memory: 3072
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:73:83:7B,ip=dhcp,type=veth
onboot: 1
ostype: debian
rootfs: thin1-r630-02:vm-103-disk-0
swap: 512
tags: community-script;controller;tp-link
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,14 @@
arch: amd64
cores: 1
description: <div align='center'>%0A <a href='https%3A//Helper-Scripts.com' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width%3A81px;height%3A112px;'/>%0A </a>%0A%0A <h2 style='font-size%3A 24px; margin%3A 20px 0;'>Gitea LXC</h2>%0A%0A <p style='margin%3A 16px 0;'>%0A <a href='https%3A//ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>%0A <img src='https%3A//img.shields.io/badge/&#x2615;-Buy us a coffee-blue' alt='spend Coffee' />%0A </a>%0A </p>%0A%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-github fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>GitHub</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-comments fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/discussions' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Discussions</a>%0A </span>%0A <span style='margin%3A 0 10px;'>%0A <i class="fa fa-exclamation-circle fa-fw" style="color%3A #f5f5f5;"></i>%0A <a href='https%3A//github.com/community-scripts/ProxmoxVE/issues' target='_blank' rel='noopener noreferrer' style='text-decoration%3A none; color%3A #00617f;'>Issues</a>%0A </span>%0A</div>%0A
features: nesting=1,keyctl=1
hostname: gitea
memory: 1024
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:2C:3B:37,ip=dhcp,type=veth
onboot: 1
ostype: debian
rootfs: thin1-r630-02:vm-104-disk-0
swap: 512
tags: community-script;git
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,12 @@
arch: amd64
cores: 2
features: nesting=1,keyctl=1
hostname: firefly-1
memory: 4096
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:CE:28:0A,ip=dhcp,type=veth
onboot: 1
ostype: ubuntu
rootfs: thin1-r630-02:vm-6200-disk-0
swap: 512
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,12 @@
arch: amd64
cores: 2
features: nesting=1,keyctl=1
hostname: mim-api-1
memory: 2048
net0: name=eth0,bridge=vmbr0,hwaddr=BC:24:11:85:7B:09,ip=dhcp,type=veth
onboot: 1
ostype: ubuntu
rootfs: thin4:vm-7811-disk-0,size=30G
swap: 512
timezone: America/Los_Angeles
unprivileged: 1

View File

@@ -0,0 +1,73 @@
#!/bin/bash
# Rollback script for IP changes
# Generated automatically - DO NOT EDIT MANUALLY
set -euo pipefail
echo "=== Rolling Back IP Changes ==="
echo ""
# Rollback VMID 3501 (ccip-monitor-1) on ml110
echo "Rolling back VMID 3501 to 192.168.11.14..."
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct stop 3501" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct set 3501 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.14/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 3501"
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct start 3501" 2>/dev/null || true
echo ""
# Rollback VMID 3500 (oracle-publisher-1) on ml110
echo "Rolling back VMID 3500 to 192.168.11.15..."
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct stop 3500" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct set 3500 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.15/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 3500"
ssh -o ConnectTimeout=10 root@192.168.11.10 "pct start 3500" 2>/dev/null || true
echo ""
# Rollback VMID 103 (omada) on r630-02
echo "Rolling back VMID 103 to 192.168.11.20..."
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 103" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 103 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.20/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 103"
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 103" 2>/dev/null || true
echo ""
# Rollback VMID 104 (gitea) on r630-02
echo "Rolling back VMID 104 to 192.168.11.18..."
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 104" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 104 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.18/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 104"
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 104" 2>/dev/null || true
echo ""
# Rollback VMID 100 (proxmox-mail-gateway) on r630-02
echo "Rolling back VMID 100 to 192.168.11.4..."
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 100" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 100 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.4/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 100"
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 100" 2>/dev/null || true
echo ""
# Rollback VMID 101 (proxmox-datacenter-manager) on r630-02
echo "Rolling back VMID 101 to 192.168.11.6..."
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 101" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 101 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.6/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 101"
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 101" 2>/dev/null || true
echo ""
# Rollback VMID 102 (cloudflared) on r630-02
echo "Rolling back VMID 102 to 192.168.11.9..."
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 102" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 102 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.9/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 102"
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 102" 2>/dev/null || true
echo ""
# Rollback VMID 6200 (firefly-1) on r630-02
echo "Rolling back VMID 6200 to 192.168.11.7..."
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct stop 6200" 2>/dev/null || true
sleep 2
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct set 6200 --net0 bridge=vmbr0,name=eth0,ip=192.168.11.7/24,gw=192.168.11.1,type=veth" || echo "Warning: Failed to rollback 6200"
ssh -o ConnectTimeout=10 root@192.168.11.12 "pct start 6200" 2>/dev/null || true
echo ""