Add comprehensive upgrade guide
This commit is contained in:
1 parent
1d95b6d026
commit
8c608d72a3
2 files changed
+152
No files matched your search
@@ -35,6 +35,7 @@ curl -fsSL https://raw.githubusercontent.com/nmemmert/monitor/main/install-ubunt
|
||||
| [📦 Installation](docs/INSTALLATION.md) | Quick install, manual setup, dev/prod modes |
|
||||
| [🚀 Deployment](docs/DEPLOYMENT.md) | Deploy to remote servers, Docker, services, firewall |
|
||||
| [📚 Usage Guide](docs/USAGE.md) | Dashboard, History, Settings, Resources, SLA Reports |
|
||||
| [⬆️ Upgrade Guide](docs/UPGRADE.md) | How to upgrade to new versions |
|
||||
| [🆘 Troubleshooting](docs/TROUBLESHOOTING.md) | Common issues and solutions |
|
||||
|
||||
## History Feature
|
||||
|
||||
+151
@@ -0,0 +1,151 @@
|
||||
# Upgrade Guide
|
||||
|
||||
## Checking Your Version
|
||||
|
||||
Current version: Check the package.json file or look at the UI footer.
|
||||
|
||||
## Upgrade Process
|
||||
|
||||
### Option 1: Git Repository (Recommended)
|
||||
|
||||
If you deployed using git:
|
||||
|
||||
```bash
|
||||
cd /opt/resource-monitor
|
||||
git pull origin main
|
||||
npm install
|
||||
cd client && npm run build && cd ..
|
||||
git add -f client/build/
|
||||
git commit -m "Update build files after upgrade"
|
||||
git push
|
||||
pm2 restart resource-monitor
|
||||
```
|
||||
|
||||
Then hard-refresh your browser (Ctrl+Shift+R) to clear cache and load the new version.
|
||||
|
||||
### Option 2: Manual Update
|
||||
|
||||
1. **Backup your data:**
|
||||
```bash
|
||||
cp -r data/ data.backup
|
||||
cp .env data.backup/
|
||||
```
|
||||
|
||||
2. **Download latest version:**
|
||||
```bash
|
||||
# Download zip from GitHub and extract to a new folder
|
||||
# Or clone fresh: git clone https://github.com/nmemmert/monitor.git monitor-new
|
||||
```
|
||||
|
||||
3. **Copy your configuration:**
|
||||
```bash
|
||||
cp data.backup/.env monitor-new/
|
||||
```
|
||||
|
||||
4. **Install and build:**
|
||||
```bash
|
||||
cd monitor-new
|
||||
npm run install-all
|
||||
cd client && npm run build && cd ..
|
||||
```
|
||||
|
||||
5. **Stop old version and start new:**
|
||||
```bash
|
||||
pm2 stop resource-monitor
|
||||
pm2 delete resource-monitor
|
||||
pm2 start server/index.js --name resource-monitor
|
||||
pm2 save
|
||||
```
|
||||
|
||||
6. **Restore data (if needed):**
|
||||
```bash
|
||||
# If you want to preserve old database:
|
||||
cp data.backup/skywatch.db data/
|
||||
```
|
||||
|
||||
### Option 3: Docker Update
|
||||
|
||||
```bash
|
||||
# Pull latest image
|
||||
docker pull your-registry/resource-monitor:latest
|
||||
|
||||
# Stop old container
|
||||
docker stop monitor
|
||||
|
||||
# Start new container with same volume
|
||||
docker run -d -p 3001:3001 -v resource-data:/app/data --name monitor resource-monitor:latest
|
||||
|
||||
# Clean up old container
|
||||
docker rm monitor-old
|
||||
```
|
||||
|
||||
## What to Check After Upgrade
|
||||
|
||||
1. **Access the dashboard:** Visit http://your-server:3001
|
||||
2. **Check resources:** Verify all resources are still configured
|
||||
3. **Test notifications:** Send test email/webhook from Settings
|
||||
4. **View history:** Verify historical data is intact
|
||||
5. **Monitor logs:** `pm2 logs resource-monitor` for any errors
|
||||
|
||||
## Rollback
|
||||
|
||||
If something goes wrong:
|
||||
|
||||
```bash
|
||||
# If using git:
|
||||
git revert HEAD
|
||||
npm install
|
||||
pm2 restart resource-monitor
|
||||
|
||||
# If using manual backup:
|
||||
# Stop the new version and restore old version from backup
|
||||
pm2 stop resource-monitor
|
||||
# Copy old files back
|
||||
pm2 start resource-monitor
|
||||
```
|
||||
|
||||
## Breaking Changes by Version
|
||||
|
||||
### v1.0 → v1.1
|
||||
- Database schema may be upgraded automatically
|
||||
- No manual action required
|
||||
- Check logs if issues occur
|
||||
|
||||
### v1.1 → v2.0
|
||||
- Node.js 16+ required (was 14+)
|
||||
- Update your Node.js before upgrading
|
||||
- Check `.env` for any new required settings
|
||||
|
||||
## Troubleshooting Upgrades
|
||||
|
||||
### White screen after upgrade
|
||||
- Hard refresh browser (Ctrl+Shift+R)
|
||||
- Clear all browser cache
|
||||
- Check console for JavaScript errors (F12)
|
||||
|
||||
### Database errors
|
||||
- Ensure `data/` directory is writable
|
||||
- Check disk space: `df -h`
|
||||
- Verify database integrity: `sqlite3 data/skywatch.db "PRAGMA integrity_check;"`
|
||||
|
||||
### Resources not checking
|
||||
- Verify resources still exist: `pm2 logs resource-monitor`
|
||||
- Re-enable resources in dashboard if needed
|
||||
- Check network connectivity from server
|
||||
|
||||
### Notifications not working
|
||||
- Test email/webhook from Settings page
|
||||
- Review server logs for errors
|
||||
- Check that EMAIL_ENABLED and WEBHOOK_ENABLED are still set
|
||||
|
||||
## Staying Updated
|
||||
|
||||
To get notifications about new releases:
|
||||
|
||||
1. Watch the GitHub repository
|
||||
2. Star the project
|
||||
3. Enable notifications in GitHub settings
|
||||
|
||||
## Support
|
||||
|
||||
Having upgrade issues? Check the [Troubleshooting Guide](TROUBLESHOOTING.md) or open an issue on GitHub.
|
||||
Reference in new issue
Block a user