Files
Dashboard/DEPLOY_MANUAL.md

4.7 KiB

Manual Deployment Guide (Copy & Paste Commands)

What went wrong?

The automated deploy.bat script needs:

  1. SSH installed on Windows (Git Bash or OpenSSH)
  2. Network connection to 100.104.196.38
  3. Proper SSH key setup

Solution: Deploy Manually (Easier)

Step 1: Open Command Prompt or PowerShell

# Or use Command Prompt (cmd.exe)
powershell

Step 2: SSH into the Atlas server

ssh soadmin@100.104.196.38

If this fails:

  • "ssh command not found" → Install Git Bash: https://git-scm.com/download/win
  • "Permission denied" → Your SSH key isn't set up or password is wrong
  • "Connection refused" → Server isn't accessible or wrong IP

Step 3: Once logged in, run these commands

# Create directory
mkdir -p /opt/dashboard
cd /opt/dashboard

# Clone the repository (first time only)
git clone https://github.com/mblanke/Dashboard.git .

# If already cloned, update instead:
# git pull origin main

Step 4: Create .env.local with your credentials

# Copy the template
cp .env.example .env.local

# Edit with your actual credentials
nano .env.local

Replace these values:

UNIFI_HOST=100.104.196.38         # Or your UniFi IP
UNIFI_USERNAME=admin              # Your UniFi username
UNIFI_PASSWORD=your_password      # Your UniFi password

SYNOLOGY_HOST=100.104.196.38      # Or your Synology IP
SYNOLOGY_USERNAME=admin           # Your Synology username
SYNOLOGY_PASSWORD=your_password   # Your Synology password

NEXT_PUBLIC_GRAFANA_HOST=http://100.104.196.38:3000  # Your Grafana URL

To edit in nano:

  • Type the new values
  • Press Ctrl+O then Enter to save
  • Press Ctrl+X to exit

Step 5: Build and deploy

# Build the Docker image
docker-compose build

# Start the container
docker-compose up -d

Step 6: Verify it's running

# Check status
docker-compose ps

# View logs
docker-compose logs -f dashboard

Should show:

  • Container: "Up" (green)
  • Port: 3001:3000
  • Status: "healthy" or "starting"

Step 7: Access the dashboard

Open browser and go to:

http://100.104.196.38:3001

🆘 If Something Goes Wrong

Docker not found

# Install Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

docker-compose not found

# Install docker-compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Permission denied errors

# Add current user to docker group
sudo usermod -aG docker $USER
# Then logout and login again
exit
ssh soadmin@100.104.196.38

Port 3001 already in use

# Find what's using port 3001
sudo lsof -i :3001

# Either kill it or use a different port
# To use different port, edit docker-compose.yml:
# Change "3001:3000" to "3002:3000" (for port 3002)

Container won't start

# Check logs for errors
docker-compose logs dashboard

# Common issues:
# 1. Missing .env.local
# 2. Invalid credentials
# 3. Out of disk space
# 4. Invalid environment variables

Success Checklist

After deployment, verify:

  • Can SSH into 100.104.196.38 as soadmin
  • Repository cloned to /opt/dashboard
  • .env.local created with your credentials
  • docker-compose ps shows container "Up"
  • docker-compose logs shows no errors
  • Can access http://100.104.196.38:3001 in browser
  • Docker containers widget displays containers
  • Search functionality works
  • No error messages in console

📝 Quick Reference

# View current logs
docker-compose logs -f

# Stop container
docker-compose down

# Restart container
docker-compose restart

# Rebuild and restart
docker-compose build --no-cache && docker-compose up -d

# Update from git
git pull origin main && docker-compose build && docker-compose up -d

# Check disk space
df -h

# Check docker stats
docker stats

🆘 Need More Help?

  1. Check QUICKSTART.md for overview
  2. Check DEPLOYMENT.md for detailed setup
  3. Check MONITORING.md for troubleshooting
  4. Check docker-compose logs for errors: docker-compose logs dashboard

Still stuck? Make sure:

  • SSH works: ssh soadmin@100.104.196.38 "docker --version"
  • Docker works: ssh soadmin@100.104.196.38 "docker-compose --version"
  • Directory exists: ssh soadmin@100.104.196.38 "ls -la /opt/dashboard"
  • .env.local exists: ssh soadmin@100.104.196.38 "cat /opt/dashboard/.env.local | head -5"