mirror of
https://github.com/Studio-Saelix/sencho.git
synced 2026-07-28 04:38:59 +00:00
f516275834
Eliminate all references to "Pro" across backend, frontend, and docs. Internal tier value renamed from 'pro' to 'paid'; user-facing text now uses the thematic tier names (Community, Skipper, Admiral). - Rename LicenseTier 'pro' to 'paid' in backend and frontend types - Rename requirePro guard to requirePaid, error code PRO_REQUIRED to PAID_REQUIRED - Rename ProGate.tsx to PaidGate.tsx with updated copy - Fix: trial users can now see upgrade/purchase cards in Settings - Update all docs and openapi.yaml to use correct tier names
85 lines
3.8 KiB
Plaintext
85 lines
3.8 KiB
Plaintext
---
|
|
title: Remote Updates
|
|
description: Check for outdated nodes and trigger over-the-air Sencho updates from the Fleet View.
|
|
---
|
|
|
|
Sencho can update remote nodes directly from the dashboard. When your primary instance is running a newer version than a remote node, a one-click update pulls the latest image and recreates the container automatically.
|
|
|
|
<Note>
|
|
Remote updates require a **Skipper** or **Admiral** license.
|
|
</Note>
|
|
|
|
## Prerequisites
|
|
|
|
Remote updates work when each node meets these conditions:
|
|
|
|
- Deployed via **Docker Compose** (the recommended method)
|
|
- The Docker socket (`/var/run/docker.sock`) is mounted into the container
|
|
- Running a Sencho version that supports the `self-update` [capability](/features/node-compatibility)
|
|
|
|
Nodes deployed with `docker run` or orchestrators like Kubernetes do not support self-update. These nodes show an error message when you attempt to update them.
|
|
|
|
## Checking for updates
|
|
|
|
Open the **Fleet** tab and click **Check Updates** in the header. This opens the **Node Updates** dialog, which lists every node with its current version and update status.
|
|
|
|
<Frame>
|
|
<img src="/images/fleet-view/fleet-node-updates.png" alt="Node Updates dialog showing update status for each node" />
|
|
</Frame>
|
|
|
|
The dialog includes:
|
|
|
|
- **Summary cards** at the top showing counts of nodes that are Up to date, have updates Available, are currently Updating, or have Failed
|
|
- **Gateway version** label showing your primary instance's version
|
|
- **Filter** search box to find specific nodes by name or type
|
|
- **Node table** with columns for name, type, current version, latest version, and status
|
|
|
|
Each node's status column shows one of:
|
|
|
|
| Status | Meaning |
|
|
|--------|---------|
|
|
| **Up to date** badge | Node is running the same version as the gateway |
|
|
| **Update** button | A newer version is available; click to update |
|
|
| **Updating** badge | The node is pulling the new image and restarting |
|
|
| **Updated** badge | The node came back online with the new version |
|
|
| **Timed out** badge | The node did not come back within 5 minutes |
|
|
| **Failed** badge | The update command failed |
|
|
|
|
Nodes that are too old to report their version show "unknown" in the current version column. These nodes are treated as outdated.
|
|
|
|
## Updating a single node
|
|
|
|
You can trigger an update in two ways:
|
|
|
|
- Click the **Update** button next to a node in the Node Updates dialog
|
|
- Click the **Update to vX.Y.Z** button directly on a node card in Fleet View
|
|
|
|
For remote nodes, the update happens in the background. The Fleet View automatically polls at a faster rate (every 5 seconds) while an update is in progress, so you can watch the status change in near real-time.
|
|
|
|
## Updating all nodes
|
|
|
|
Click **Update All (N)** in the footer of the Node Updates dialog to trigger updates on all outdated remote nodes simultaneously. The local node is excluded from bulk updates to avoid losing dashboard connectivity.
|
|
|
|
## Local node updates
|
|
|
|
When you update the local (gateway) node:
|
|
|
|
1. A confirmation dialog appears explaining that the dashboard will briefly disconnect.
|
|
2. After confirming, the server pulls the latest image and restarts.
|
|
3. A reconnecting overlay appears and polls the server every few seconds.
|
|
4. The page automatically reloads when the server comes back.
|
|
|
|
If the server does not return within 5 minutes, a timeout message appears with a manual reload option.
|
|
|
|
## What happens during an update
|
|
|
|
When an update is triggered on a node, Sencho:
|
|
|
|
1. Pulls the latest `saelix/sencho` image using Docker Compose
|
|
2. Recreates the container with the new image
|
|
3. The node goes briefly offline during the restart
|
|
|
|
The gateway monitors the remote node until it comes back online with the new version, then marks it as **Updated**.
|
|
|
|
If you run into issues with remote updates, see the [Troubleshooting](/operations/troubleshooting#remote-update-button-does-not-appear) page.
|