For the complete documentation index, see llms.txt. Markdown versions of all docs pages are available by appending .md to any docs URL.
Upgrade
Upgrade agentgateway to a new version in each installation method.
About
An upgrade replaces the agentgateway binary or image. It does not change your configuration, which lives in a file, a mounted volume, or a ConfigMap that the upgrade leaves alone. To change the configuration itself, see Update your configuration.
Every method requires a restart of the agentgateway process, because a new binary cannot replace a running one in place. Plan for a brief interruption in proxy traffic, or run more than one instance behind a load balancer.
Before you begin
- Review the release notes highlights and GitHub release for the version that you are moving to.
Optional: Set the old version that you are on so that you can roll back to it, such as 1.5.0 in the following example.
agentgateway --version{ "version": "1.5.0", ... }export OLD_VERSION=1.5.0Set the new version that you want to upgrade to as an environment variable, such as 0.0.0-latest-dev in the following example.
export NEW_VERSION=0.0.0-latest-dev
Upgrade
The steps differ by installation method, because each method delivers the agentgateway binary in a different way.
Binary
Run the installation script again with the version that you want. The script detects the installed binary, replaces it, and leaves your configuration file untouched.
Check the version that you run today.
agentgateway --versionExample output:
{ "version": "1.5.0", "git_revision": "90f7b25855fb5f5fbefcc16855206040cba9b77d", "rust_version": "1.89.0", "build_profile": "release", "build_target": "x86_64-unknown-linux-musl" }Stop the running agentgateway process.
Run the installation script with the target version. Replace
<version>with any release tag from the agentgateway releases page, such asv1.5.0. The version must start withv, and the script adds it if you omit it.curl -sL https://agentgateway.dev/install | bash -s -- --version $NEW_VERSIONExample output, where the script reports the change that it is about to make:
agentgateway v1.5.0 is available. Changing from version 1.4.1. Downloading https://github.com/agentgateway/agentgateway/releases/download/v1.5.0/agentgateway-linux-amd64 Verifying checksum... Done. Preparing to install agentgateway into /usr/local/bin agentgateway installed into /usr/local/bin/agentgateway
Verify the new version.
agentgateway --versionStart agentgateway again with your configuration file.
agentgateway -f config.yaml
Docker
Recreate the container from a new image tag, mounting the same configuration path. Your configuration file and any SQLite database in the mounted directory persist, because they live on the volume rather than in the container.
Pull the new image.
docker pull cr.agentgateway.dev/agentgateway:latest-devStop and remove the running container. The configuration in your mounted directory is not affected.
docker rm -f agentgatewayStart a container from the new tag, with the same mount and published ports that you used before.
docker run -d --name agentgateway \ --user "$(id -u):$(id -g)" \ -v "$PWD/agentgateway-config:/config" \ -p 4000:4000 \ cr.agentgateway.dev/agentgateway:latest-devVerify the version that the new container runs.
docker exec agentgateway /app/agentgateway --versionConfirm that your configuration came through, such as by checking the effective configuration.
curl -s http://localhost:4000/api/config/effective | jq
In Docker Compose, change the image tag in your compose.yaml file and recreate the service instead.
docker compose pull
docker compose up -dHelm
Upgrade the chart version. The chart re-renders the ConfigMap from your Helm values and rolls the Deployment.
Check the chart version and app version that you run today.
helm list -n agentgateway-systemExample output:
NAME NAMESPACE REVISION STATUS CHART APP VERSION agentgateway-standalone agentgateway-system 3 deployed agentgateway-standalone-1.5.0 1.5.0Upgrade the release to the new chart version.
helm upgrade -i agentgateway-standalone \ oci://cr.agentgateway.dev/charts/agentgateway-standalone \ --namespace agentgateway-system \ --reuse-values \ --version 0.0.0-latest-devWatch the rollout.
kubectl rollout status deploy/agentgateway-standalone \ -n agentgateway-systemVerify the new version.
helm list -n agentgateway-system
Important
--reuse-values keeps the values from the previous revision, which is what you want for a version-only upgrade. If you pass -f values.yaml instead, pass your complete values file, because a value that you leave out returns to its chart default. That includes mode, so an incomplete file can send a release in database mode back to read-only storage. For more information, see Update your configuration.
Because the default replicaCount is 1, expect a brief interruption in traffic during the rollout. To keep a pod serving traffic while the new pod starts, set replicaCount to a value greater than 1.
Rollback
Roll back to an earlier version.
Warning
Rolling back to an older version after agentgateway has written to a database can fail if the newer version changed the database schema. If you use hybrid storage mode, back up the database before you upgrade. For more information, see Configuration storage.
Run the script again with the version that you upgraded from.
curl -sL https://agentgateway.dev/install | bash -s -- --version v$OLD_VERSIONNext steps
- Update your configuration to change agentgateway settings rather than the agentgateway version.
- Inspect agentgateway configuration to confirm what the upgraded instance loaded.
- Debug agentgateway if the instance does not start after an upgrade.