From 75164d3aef08a7df38113b3a549456924aba9421 Mon Sep 17 00:00:00 2001 From: Misha Bragin Date: Tue, 27 Jan 2026 12:29:05 +0100 Subject: [PATCH] Add a Maintenance Section (#580) * Add a Maintenance section * Move the self-host section higher * Add references to backup and upgrade --- .../maintenance/update-available.png | Bin 0 -> 23436 bytes src/components/NavigationDocs.jsx | 33 +++++--- src/pages/selfhosted/maintenance/backup.mdx | 27 +++++++ src/pages/selfhosted/maintenance/remove.mdx | 17 +++++ src/pages/selfhosted/maintenance/upgrade.mdx | 66 ++++++++++++++++ .../selfhosted/selfhosted-quickstart.mdx | 72 +++++------------- src/styles/tailwind.css | 7 ++ 7 files changed, 159 insertions(+), 63 deletions(-) create mode 100644 public/docs-static/img/selfhosted/maintenance/update-available.png create mode 100644 src/pages/selfhosted/maintenance/backup.mdx create mode 100644 src/pages/selfhosted/maintenance/remove.mdx create mode 100644 src/pages/selfhosted/maintenance/upgrade.mdx diff --git a/public/docs-static/img/selfhosted/maintenance/update-available.png b/public/docs-static/img/selfhosted/maintenance/update-available.png new file mode 100644 index 0000000000000000000000000000000000000000..69bbb3b1c018aabc04c1bfb1886ffe52463f2258 GIT binary patch literal 23436 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 mTxfda{tRN$2)FjYenvxK+k^>~D?31k!Fjs+xvX +For detailed information about each configuration file and its options, see the [Configuration Files Reference](/selfhosted/configuration-files). + +To save the Management service databases, stop the Management service and copy the files from the store directory: +```bash +docker compose stop management +docker compose cp -a management:/var/lib/netbird/ backup/ +docker compose start management +``` + +## Get In Touch + +Feel free to ping us on [Slack](/slack-url) if you have any questions. + +- NetBird managed version: [https://app.netbird.io](https://app.netbird.io) +- Make sure to [star us on GitHub](https://github.com/netbirdio/netbird) +- Follow us [on X](https://x.com/netbird) diff --git a/src/pages/selfhosted/maintenance/remove.mdx b/src/pages/selfhosted/maintenance/remove.mdx new file mode 100644 index 00000000..66b1dacf --- /dev/null +++ b/src/pages/selfhosted/maintenance/remove.mdx @@ -0,0 +1,17 @@ +## Remove Your Self-Hosted NetBird Installation + +To remove the NetBird installation and all related data from your server, run these commands from the folder where you installed NetBird: +```bash +# remove all NetBird-related containers and volumes (data) +docker compose down --volumes +# remove downloaded and generated config files +rm -f docker-compose.yml Caddyfile dashboard.env management.json relay.env +``` + +## Get In Touch + +Feel free to ping us on [Slack](/slack-url) if you have any questions. + +- NetBird managed version: [https://app.netbird.io](https://app.netbird.io) +- Make sure to [star us on GitHub](https://github.com/netbirdio/netbird) +- Follow us [on X](https://x.com/netbird) diff --git a/src/pages/selfhosted/maintenance/upgrade.mdx b/src/pages/selfhosted/maintenance/upgrade.mdx new file mode 100644 index 00000000..1e8d57f3 --- /dev/null +++ b/src/pages/selfhosted/maintenance/upgrade.mdx @@ -0,0 +1,66 @@ +## Upgrade Your Self-Hosted NetBird Installation + +### Check for Updates + +The NetBird Dashboard displays an update indicator at the bottom of the left navigation menu when a new version is available: + +

+ update-available +

+ +You can also check the current version programmatically via the API (requires authentication): + +```bash +curl 'https://your-netbird-domain/api/instance/version' \ + -H 'accept: application/json' \ + -H 'authorization: Bearer ' +``` + +Example response: + +```json +{ + "dashboard_available_version": "2.28.0", + "management_available_version": "0.64.1", + "management_current_version": "0.64.0", + "management_update_available": true +} +``` + +### Check Release Notes + +Before upgrading, review the release notes for any breaking changes or migration steps: + +- **Dashboard**: [https://github.com/netbirdio/dashboard/releases](https://github.com/netbirdio/dashboard/releases) +- **Management, Signal, and Relay**: [https://github.com/netbirdio/netbird/releases](https://github.com/netbirdio/netbird/releases) + + +Management, Signal, and Relay are all part of the same repository and share the same version numbers. + + +### Upgrade Steps + +To upgrade NetBird to the latest version: + +1. Run the backup steps described in the [backup](#backup) section. +2. Review the release notes (see above) for any breaking changes. +3. Pull the latest NetBird docker images: + ```bash + docker compose pull management dashboard signal relay + ``` +4. Restart the NetBird containers with the new images: + ```bash + docker compose up -d --force-recreate management dashboard signal relay + ``` + + +For upgrades from older versions (pre-v0.26.0), see the [Legacy upgrade notes](#legacy-self-hosting-with-zitadel-idp). + + +## Get In Touch + +Feel free to ping us on [Slack](/slack-url) if you have any questions. + +- NetBird managed version: [https://app.netbird.io](https://app.netbird.io) +- Make sure to [star us on GitHub](https://github.com/netbirdio/netbird) +- Follow us [on X](https://x.com/netbird) diff --git a/src/pages/selfhosted/selfhosted-quickstart.mdx b/src/pages/selfhosted/selfhosted-quickstart.mdx index 649e99b3..a6c85b40 100644 --- a/src/pages/selfhosted/selfhosted-quickstart.mdx +++ b/src/pages/selfhosted/selfhosted-quickstart.mdx @@ -128,58 +128,28 @@ NetBird includes built-in local user management powered by an embedded + --- -## Manage Installation - -### Backup - -To back up your NetBird installation, you need to copy the configuration files and the Management service databases. - -The configuration files are located in the folder where you ran the installation script. To back up, copy the files to a backup location: -```bash -mkdir backup -cp docker-compose.yml Caddyfile dashboard.env management.json relay.env backup/ -``` - - -For detailed information about each configuration file and its options, see the [Configuration Files Reference](/selfhosted/configuration-files). - -To save the Management service databases, stop the Management service and copy the files from the store directory: -```bash -docker compose stop management -docker compose cp -a management:/var/lib/netbird/ backup/ -docker compose start management -``` - -### Upgrade - -To upgrade NetBird to the latest version: - -1. Run the backup steps described in the [backup](#backup) section. -2. Review the [release notes](https://github.com/netbirdio/netbird/releases) for any breaking changes. -3. Pull the latest NetBird docker images: - ```bash - docker compose pull management dashboard signal relay - ``` -4. Restart the NetBird containers with the new images: - ```bash - docker compose up -d --force-recreate management dashboard signal relay - ``` - - -For upgrades from older versions (pre-v0.26.0), see the [Legacy upgrade notes](#legacy-self-hosting-with-zitadel-idp). - - -### Remove -To remove the NetBird installation and all related data from your server, run these commands from the folder where you installed NetBird: -```bash -# remove all NetBird-related containers and volumes (data) -docker compose down --volumes -# remove downloaded and generated config files -rm -f docker-compose.yml Caddyfile dashboard.env management.json relay.env -``` - ## Troubleshoot - **I can't access the `/setup` page** @@ -198,7 +168,7 @@ For more troubleshooting help, see the [Troubleshooting guide](/selfhosted/troub --- -## Get in touch +## Get In Touch Feel free to ping us on [Slack](/slack-url) if you have any questions. diff --git a/src/styles/tailwind.css b/src/styles/tailwind.css index b5ec025b..0fd50963 100644 --- a/src/styles/tailwind.css +++ b/src/styles/tailwind.css @@ -68,6 +68,13 @@ width: 70%; } +.imagewrapper-small { + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + border-radius: 4px; + overflow:hidden; + width: 30%; +} + .imagewrapper-medium { box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); border-radius: 4px;