Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions src/components/NavigationDocs.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,10 @@ export const docsNavigation = [
},
]
},
{
title: 'Auto Update',
href: '/how-to/auto-update'
},
]
},
{
Expand Down
74 changes: 74 additions & 0 deletions src/pages/how-to/auto-update.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
import {Note} from "@/components/mdx";

# Client Automatic Updates

The Automatic Updates feature allows the NetBird client to automatically update itself when a new version is available. This ensures that users always have the latest features and security patches without needing to manually download and install updates.

<Note>
Minimum supported agent version: <strong>TODO:</strong>.
This or higher version must also be installed on the peers you need to Automatically Update.
</Note>

<Note>
This feature also requires an upgraded NetBird Management server.
If you're self-hosting NetBird, ensure your server is updated to version <strong>TODO:</strong>, which adds support for Automatic Updates.
</Note>

<Note>
This feature is currently under active development and will continue to evolve. Future releases will add Linux support, and handling for long-running peers.
</Note>

## Enable Automatic Updates

![Automatic Updates](/docs-static/img/how-to-guides/auto-update/dashboard.png)

To enable client auto updates, navigate to [Settings &raquo; Clients](https://app.netbird.io/settings) and enable 'Automatic Updates'.

You can either:

* Update to latest stable version.
* Update to a specific version.

Once enabled, all NetBird clients will automatically check for updates on startup and install the specified version if the current version is older than the specified version.

## How it works

1. **Connection Start**: When a Peer connects to Management, it will receive the current Automatic Updates settings.
2. **Version Check**: The Peer will compare its current version with the version specified in the Automatic Updates settings.
3. **Update Process**:
1. If the Peer is running an older version than specified, it will show a notification to the user indicating that an Automatic Update is under way.
2. Client will then download the update package from the official NetBird repository.
3. The Peer will then install the update and restart itself to apply the changes.
4. **Notification**: After a successful update, the Peer will show a notification to the user indicating that the update was successful.

## Supported Platforms

Automatic Updates are supported on the following platforms only:
- Windows
- macOS

Linux support is not available at this time due to the variety of distributions and package managers. A future release may include support for popular distributions.

## Backward and Forward Compatibility

* If Management server version &lt; (#TODO: Insert release version with Auto Updates here), clients will **not** automatically update.
* If Management server version &gt;= TODO:, NetBird clients with version &gt;= TODO: will automatically update according to the Automatic Updates settings.

## Notes

1. Automatic Updates will be set to "Latest" by default.
2. Automatic Updates currently only run within the first minute after the Peer starts. If the Peer is not restarted, it will not check for updates again until the next restart.
3. If the Peer is unable to download or install the update (e.g., due to network issues), it will show an error notification but will not retry until the next restart.
4. For long-running Peers, a future release may include support for periodic update checks during runtime.
5. On MacOS, NetBird clients installed using Homebrew will be automatically upgraded to the latest available version regardless of the version specified in the Automatic Updates settings.
6. All notifications related to Automatic Updates will be shown only if NetBird UI is running and Notifications are enabled.

## Get started
<p float="center" >
<Button name="button" className="button-5" onClick={() => window.open("https://netbird.io/pricing")}>Use NetBird</Button>
</p>

- Make sure to [star us on GitHub](https://github.com/netbirdio/netbird)
- Follow us [on X](https://x.com/netbird)
- Join our [Slack Channel](/slack-url)
- NetBird [latest release](https://github.com/netbirdio/netbird/releases) on GitHub