Files
Dashboard/CHECKLIST.md

2.7 KiB

Pre-Deployment Checklist

Server & Infrastructure

  • Atlas server (100.104.196.38) is running and accessible
  • SSH access verified (ssh soadmin@100.104.196.38)
  • Docker and Docker Compose are installed on Atlas server
  • Port 3001 is available on Atlas server

Dependencies & External Services

  • Docker daemon is running and accessible at http://100.104.196.38:2375
    • Test: curl http://100.104.196.38:2375/containers/json
  • UniFi Controller is running and accessible
    • Hostname/IP address known
    • SSH port known (default: 8443)
    • Admin credentials available
  • Synology NAS is running and accessible
    • Hostname/IP address known
    • HTTPS port known (default: 5001)
    • Admin credentials available
  • Grafana instance is running
    • Accessible at known URL
    • Dashboards created with known IDs
    • API key generated (if needed)

Code & Configuration

  • Git repository is cloned and up-to-date
  • .env.local file created with all required variables
    • DOCKER_HOST configured
    • UNIFI_HOST, UNIFI_USERNAME, UNIFI_PASSWORD set
    • SYNOLOGY_HOST, SYNOLOGY_USERNAME, SYNOLOGY_PASSWORD set
    • NEXT_PUBLIC_GRAFANA_HOST configured
    • NEXT_PUBLIC_API_BASE_URL set to http://100.104.196.38:3001
  • Docker image builds successfully locally (docker build .)
  • All environment variables are marked as required or have defaults

Deployment Process

  • Deployment script has execute permissions: chmod +x deploy.sh
  • SSH key is configured (if not using password auth)
  • Deploy directory exists or will be created: /opt/dashboard

Post-Deployment Verification

  • Container starts successfully: docker-compose up -d
  • Container is healthy: docker-compose ps shows "Up"
  • Dashboard is accessible at http://100.104.196.38:3001
  • Docker containers widget loads and displays containers
  • UniFi widget loads and shows devices (or displays error if not configured)
  • Synology widget loads and shows storage (or displays error if not configured)
  • Grafana panels embed correctly
  • Search functionality works
  • Auto-refresh happens every 10 seconds

Optional Enhancements

  • Traefik is configured and running (if using reverse proxy)
  • HTTPS/SSL certificate is configured
  • Automatic logs rotation is set up
  • Monitoring/alerting is configured
  • Backup strategy is planned

Troubleshooting

  • Have access to Docker logs: docker-compose logs -f
  • Know how to SSH into the server
  • Have credentials for all external services
  • Network connectivity is verified