Upgrading Firezone

Upgrading Firezone consists of upgrading the Clients and Gateways. Read more below to understand how our versioning system works, how you can auto-update these components, and suggestions for an upgrade strategy in high-availability deployments.

How versioning works in Firezone

Firezone uses a semantic version scheme in the following format:

MAJOR.MINOR.PATCH

Firezone is changing rapidly, so we currently recommend staying as up-to-date as possible to make sure you have the latest bug fixes and performance improvements in place.

All components currently have a major version of 1 -- this is not expected to change for some time.

Client application auto-updates

In general we recommend keeping Clients and Gateways as up-to-date as possible. See below for auto-update details for each platform.

Enable auto-updates in Settings.app.

Upgrading Gateways

Upgrading a Gateway generally consists of simply replacing the binary or Docker image and then restarting. See below for specific steps depending on how you've deployed your Gateway:

Run the following upgrade script which pulls the latest image, stops the running Gateway, and then restarts it using the newer image with the same configuration.

curl -s https://raw.githubusercontent.com/firezone/firezone/main/scripts/gateway-docker-upgrade.sh | bash

Verification

After running the upgrade, you can verify the Gateway is running the latest version by ensuring the sha256 hash of the pulled image matches the latest artifact published on GitHub:

Gateway upgrade verification
# Get the sha256 hash of the gateway image running on your system
> docker inspect ghcr.io/firezone/gateway:1.0 --format='{{index .RepoDigests 0}}'

# Ensure this hash matches the latest available image above
ghcr.io/firezone/gateway@sha256:0516fa4a305fac10571238db2b7bf02e6adeda0fb5afc1fe7e8d0c4d0a93ebc6

Downtime considerations

Gateways deployed within the same Site will automatically failover for each other. By upgrading Gateways one-by-one, Clients connected to the Gateway being upgraded will automatically reconnect to an available Gateway.

Upgrades should be performed during a scheduled maintenance window to ensure minimal disruption. Other than a possible short-term connection interruption to in-use Resources, users won't otherwise be impacted by upgrading Gateways within the same Site.