Skip to content

Commit 20e8299

Browse files
authored
Merge branch 'main' into update-icon-usage
2 parents 2782905 + a47b580 commit 20e8299

File tree

13 files changed

+110
-28
lines changed

13 files changed

+110
-28
lines changed

_banners/agent-v3-release.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{{< banner "notice" "NGINX Agent 3.0 is now available" >}}
22

3+
The documentation in this section is for **NGINX Agent version 2.x**. For NGINX Agent 3.x content visit the [NGINX One Console documentation]({{< ref "/nginx-one/agent/" >}})
34

4-
F5 NGINX One Console and NGINX Instance Manager (NIM) do not currently support Agent 3.x. If you are using NGINX One Console or NGINX Instance Manager in your environment, upgrade to the latest Agent 2.x version by following the [Upgrade NGINX Agent](/nginx-agent/installation-upgrade/upgrade/) guide.
5+
F5 NGINX Instance Manager (NIM) does not currently support NGINX Agent 3.x. NGINX Instance Manager customers can upgrade to the latest NGINX Agent 2.x version by following the [Upgrade NGINX Agent](/nginx-agent/installation-upgrade/upgrade/) guide.
56

67
Please see the [Technical specifications](/nginx-agent/technical-specifications/) for product compatibility.
78

content/includes/agent/about.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,4 @@ Additionally, it collects system-level data, including CPU usage, memory consump
4040
deep observability into NGINX's behavior, enabling teams to troubleshoot issues effectively, optimize performance, and
4141
maintain high availability.
4242

43-
Collected metrics can be seamlessly exported to NGINX One Console or integrated with third-party data aggregators.
43+
By default, the OpenTelemetry Collector is configured to send metrics to NGINX One Console.

content/nginx-one/agent/containers/run-agent-container.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,10 @@ container image and create a configuration file.
2929

3030
### Pull the NGINX Agent container image
3131

32-
The NGINX Agent container image must be downloaded from a trusted source such as Docker Hub or a private container registry.
33-
3432
Run the following command to pull the official image:
3533

3634
```bash
37-
<!-- Registry HERE -->
38-
docker pull <Registry HERE>:latest
35+
docker pull private-registry.nginx.com/nginx-plus/agentv3:latest
3936
```
4037

4138
Ensure you are using the correct image version. Replace `latest` with the desired version tag if necessary.

content/nginx-one/connect-instances/connect-nginx-plus-container-images-to-nginx-one.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,13 @@ sudo docker login private-registry.nginx.com --username=YOUR_JWT_HERE --password
4242

4343
### Pull the NGINX Plus image
4444

45-
Pull the NGINX Plus image from the private registry. Replace `VERSION_TAG` with the desired version, such as `alpine`, `debian`, or `ubi`.
45+
Pull the NGINX Plus image from the private registry. Replace `<version-tag>` with the desired version, such as `alpine`, `debian`, or `ubi`.
4646

4747
```sh
48-
sudo docker pull private-registry.nginx.com/nginx-plus/agent:VERSION_TAG
48+
docker pull private-registry.nginx.com/nginx-plus/agentv3:<version-tag>
4949
```
5050

51-
You must specify a version tag. The `latest` tag is not supported. Learn more in the [Deploying NGINX and NGINX Plus on Docker]({{< ref "/nginx/admin-guide/installing-nginx/installing-nginx-docker.md#pull-the-image" >}}) guide.
51+
You must specify a version tag that matches your distribution. The `latest` tag is not supported. Learn more in the [Deploying NGINX and NGINX Plus on Docker]({{< ref "/nginx/admin-guide/installing-nginx/installing-nginx-docker.md#pull-the-image" >}}) guide.
5252

5353
<br>
5454

@@ -62,7 +62,7 @@ sudo docker pull private-registry.nginx.com/nginx-plus/agent:debian
6262

6363
### Start the NGINX Plus container
6464

65-
Start the Docker container to connect it to NGINX One. Replace `YOUR_NGINX_ONE_DATA_PLANE_KEY_HERE` with your data plane key and `VERSION_TAG` with the version tag you pulled.
65+
Start the Docker container to connect it to NGINX One. Replace `YOUR_NGINX_ONE_DATA_PLANE_KEY_HERE` with your data plane key and `version-tag` with the version tag you pulled.
6666

6767
**For NGINX Plus R33 or later**:
6868

@@ -79,7 +79,7 @@ sudo docker run \
7979
--env=NGINX_AGENT_TLS_ENABLE=true \
8080
--restart=always \
8181
--runtime=runc \
82-
-d private-registry.nginx.com/nginx-plus/agent:<VERSION_TAG>
82+
-d private-registry.nginx.com/nginx-plus/agent:<version-tag>
8383
```
8484

8585
<br>

content/nginx-one/nginx-configs/config-sync-groups/manage-config-sync-groups.md

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -162,14 +162,9 @@ When adding a new NGINX instance that is not yet registered with NGINX One, you
162162
- From the **OS Type** list, choose the appropriate operating system for your Docker image.
163163
- After selecting the OS, run the provided command to pull the Docker image.
164164

165-
**Note**: Subject to availability, you can modify the `agent: <VERSION_TAG>` to match the specific NGINX Plus version, OS type, and OS version you need. For example, you might use `agent: r32-ubi-9`. For more details on version tags and how to pull an image, see [Deploying NGINX and NGINX Plus on Docker]({{< ref "nginx/admin-guide/installing-nginx/installing-nginx-docker.md#pull-the-image" >}}).
165+
**Note**: Subject to availability, you can modify the `agentv3:<version-tag>` to match the specific NGINX Plus version, OS type, and OS version you need. For example, you might use `agentv3:r32-ubi-9`. For more details on version tags and how to pull an image, see [Deploying NGINX and NGINX Plus on Docker]({{< ref "nginx/admin-guide/installing-nginx/installing-nginx-docker.md#pull-the-image" >}}).
166166

167167

168-
- From the **OS Type** list, choose the appropriate operating system for your Docker image.
169-
- After selecting the OS, run the provided command to pull the Docker image.
170-
171-
**Note**: Subject to availability, you can modify the `agent: <VERSION_TAG>` to match the specific NGINX Plus version, OS type, and OS version you need. For example, you might use `agent: r32-ubi-9`. For more details on version tags and how to pull an image, see [Deploying NGINX and NGINX Plus on Docker]({{< ref "nginx/admin-guide/installing-nginx/installing-nginx-docker.md#pull-the-image" >}}).
172-
173168
10. Run the provided command, which includes the data plane key, in your NGINX instance terminal to start the Docker container.
174169

175170
11. Select **Done** to complete the process.

content/nginx/admin-guide/installing-nginx/installing-nginx-docker.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,24 +156,36 @@ For NGINX Plus, run:
156156
docker pull private-registry.nginx.com/nginx-plus/base:<version-tag>
157157
```
158158

159-
For NGINX Plus with NGINX Agent, run:
159+
For NGINX Plus with NGINX Agent version 2, run:
160160

161161
```shell
162162
docker pull private-registry.nginx.com/nginx-plus/agent:<version-tag>
163163
```
164164

165+
For NGINX Plus with NGINX Agent version 3, run:
166+
167+
```shell
168+
docker pull private-registry.nginx.com/nginx-plus/agentv3:<version-tag>
169+
```
170+
165171
For NGINX Plus installed from `nginx` user (rootless installation), run:
166172

167173
```shell
168174
docker pull private-registry.nginx.com/nginx-plus/rootless-base:<version-tag>
169175
```
170176

171-
For NGINX Plus with NGINX Agent installed from `nginx` user (rootless installation), run:
177+
For NGINX Plus with NGINX Agent version 2 installed from `nginx` user (rootless installation), run:
172178

173179
```shell
174180
docker pull private-registry.nginx.com/nginx-plus/rootless-agent:<version-tag>
175181
```
176182

183+
For NGINX Plus with NGINX Agent version 3 installed from `nginx` user (rootless installation), run:
184+
185+
```shell
186+
docker pull private-registry.nginx.com/nginx-plus/rootless-agentv3:<version-tag>
187+
```
188+
177189
For NGINX modules, run:<!-- Is this enough info?-->
178190

179191
```shell

content/nic/configuration/policy-resource.md

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,8 +175,14 @@ condition:
175175
|Field | Description | Type | Required |
176176
| ---| ---| ---| --- |
177177
|``jwt`` | defines a JWT condition to rate limit against. | [ratelimit.condition.jwt](#ratelimitconditionjwt) | No |
178-
|``default`` | sets the rate limit in this policy to be the default if no conditions are met. In a group of policies with the same JWT condition, only one policy can be the default. | ``bool`` | No |
178+
|``variables`` | defines a Variable condition to rate limit against. | [ratelimit.condition.variables](#ratelimitconditionvariables) | No |
179+
|``default`` | sets the rate limit in this policy to be the default if no conditions are met. In a group of policies with the same condition, only one policy can be the default. | ``bool`` | No |
179180
{{% /table %}}
181+
{{< note >}}
182+
183+
One condition of type `jwt` or `variables` is required. Each Policy supports only one condition.
184+
185+
{{< /note >}}
180186

181187
The rate limit policy with condition is designed to be used in combination with one or more rate limit policies. For example, multiple rate limit policies with [RateLimit.Condition.JWT](#ratelimitconditionjwt) can be used to apply different tiers of rate limit based on the value of a JWT claim. For a practical example of tiered rate limiting by the value of a JWT claim, see the example in our [GitHub repository](https://github.com/nginx/kubernetes-ingress/tree/v{{< nic-version >}}/examples/custom-resources/rate-limit-tiered-jwt-claim/README.md).
182188

@@ -213,6 +219,27 @@ The rate limit policy will only apply to requests that contain a JWT with the sp
213219
|``match`` | the value of the claim to match against. | ``string`` | Yes |
214220
{{% /table %}}
215221

222+
### RateLimit.Condition.Variables
223+
224+
RateLimit.Condition.Variables defines a condition for a rate limit by NGINX variable. The following example defines a condition for a rate limit policy that only applies to requests with the request method with a value `GET`:
225+
226+
```yaml
227+
variables:
228+
- name: $request_method
229+
match: GET
230+
```
231+
232+
{{< note >}}
233+
Only one variable at a time is supported at present.
234+
{{< /note >}}
235+
236+
{{% table %}}
237+
|Field | Description | Type | Required |
238+
| ---| ---| ---| --- |
239+
|``name`` | the name of the NGINX variable to be rate limit by. | ``string`` | Yes |
240+
|``match`` | the value of the NGINX variable to match against. Values prefixed with the `~` character denote the following is a [regular expression](https://nginx.org/en/docs/http/ngx_http_map_module.html#map). | ``string`` | Yes |
241+
{{% /table %}}
242+
216243
### APIKey
217244

218245
The API Key auth policy configures NGINX to authorize client requests based on the presence of a valid API Key in a header or query param specified in the policy.

content/nic/releases.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,55 @@ toc: true
55
nd-content-type: reference
66
nd-product: NIC
77
nd-docs: DOCS-616
8+
---
9+
## 5.1.0
10+
11+
08 Jul 2025
12+
13+
This release includes the ability to configure Rate Limiting for your APIs based on a specific NGINX variable and its value. This allows you more granular control over how frequently specific users access your resources.
14+
15+
Lastly, in our previous v5.0.0 release, we removed support for Open Tracing. This release replaces that observability capability with native NGINX Open Telemetry traces, allowing you to monitor the internal traffic of your applications.
16+
17+
### <i class="fa-solid fa-rocket"></i> Features
18+
- [7642](https://github.com/nginx/kubernetes-ingress/pull/7642) Add OpenTelemetry support
19+
- [7916](https://github.com/nginx/kubernetes-ingress/pull/7916) Add support for Agent V3
20+
- [7884](https://github.com/nginx/kubernetes-ingress/pull/7884) Tiered rate limits with variables
21+
- [7765](https://github.com/nginx/kubernetes-ingress/pull/7765) Add OIDC PKCE configuration through Policy
22+
- [7832](https://github.com/nginx/kubernetes-ingress/pull/7832) Add request_method to rate-limit Policy
23+
- [7695](https://github.com/nginx/kubernetes-ingress/pull/7695) Add ConfigMapKeys & MGMTConfigMapKeys to Telemetry
24+
- [7705](https://github.com/nginx/kubernetes-ingress/pull/7705) Add Context to logging for JSON and TEXT formats
25+
26+
### <i class="fa-solid fa-bug-slash"></i> Fixes
27+
28+
- [7651](https://github.com/nginx/kubernetes-ingress/pull/7651) Use pod labels as headless selector labels
29+
- [7691](https://github.com/nginx/kubernetes-ingress/pull/7691) Avoid applying updates on Ingress Controller shutdown
30+
- [7748](https://github.com/nginx/kubernetes-ingress/pull/7748) Add ; in oidc files
31+
- [7786](https://github.com/nginx/kubernetes-ingress/pull/7786) Correct namespace for mgmt secrets
32+
- [7853](https://github.com/nginx/kubernetes-ingress/pull/7853) Update template for custom redirect URI
33+
- [7865](https://github.com/nginx/kubernetes-ingress/pull/7865) Maintain HeadlessService on upgrade
34+
35+
### <i class="fa-solid fa-upload"></i> Dependencies
36+
37+
- [7647](https://github.com/nginx/kubernetes-ingress/pull/7647), [7666](https://github.com/nginx/kubernetes-ingress/pull/7666), [7711](https://github.com/nginx/kubernetes-ingress/pull/7711), [7767](https://github.com/nginx/kubernetes-ingress/pull/7767), [7798](https://github.com/nginx/kubernetes-ingress/pull/7798), [7824](https://github.com/nginx/kubernetes-ingress/pull/7824), [7854](https://github.com/nginx/kubernetes-ingress/pull/7854), [7900](https://github.com/nginx/kubernetes-ingress/pull/7900), [7918](https://github.com/nginx/kubernetes-ingress/pull/7918), [7926](https://github.com/nginx/kubernetes-ingress/pull/7926) Bump Go dependancies
38+
- [7714](https://github.com/nginx/kubernetes-ingress/pull/7714), [7788](https://github.com/nginx/kubernetes-ingress/pull/7788), [7825](https://github.com/nginx/kubernetes-ingress/pull/7825), [7855](https://github.com/nginx/kubernetes-ingress/pull/7855), [7890](https://github.com/nginx/kubernetes-ingress/pull/7890), [7888](https://github.com/nginx/kubernetes-ingress/pull/7888), [7893](https://github.com/nginx/kubernetes-ingress/pull/7893), [7903](https://github.com/nginx/kubernetes-ingress/pull/7903) Bump Docker dependencies
39+
- [7808](https://github.com/nginx/kubernetes-ingress/pull/7808) Update kubernetes version to v1.33.1 in helm schema
40+
- [7896](https://github.com/nginx/kubernetes-ingress/pull/7896) Update go version to 1.24.4
41+
42+
### <i class="fa-solid fa-download"></i> Upgrade
43+
44+
- For NGINX, use the 5.1.0 images from our
45+
[DockerHub](https://hub.docker.com/r/nginx/nginx-ingress/tags?page=1&ordering=last_updated&name=5.1.0),
46+
[GitHub Container](https://github.com/nginx/kubernetes-ingress/pkgs/container/kubernetes-ingress),
47+
[Amazon ECR Public Gallery](https://gallery.ecr.aws/nginx/nginx-ingress) or [Quay.io](https://quay.io/repository/nginx/nginx-ingress).
48+
- For NGINX Plus, use the 5.1.0 images from the F5 Container registry or build your own image using the 5.1.0 source code
49+
- For Helm, use version 2.2.0 of the chart.
50+
51+
### <i class="fa-solid fa-life-ring"></i> Supported Platforms
52+
53+
We will provide technical support for NGINX Ingress Controller on any Kubernetes platform that is currently supported by
54+
its provider and that passes the Kubernetes conformance tests. This release was fully tested on the following Kubernetes
55+
versions: 1.25-1.33.
56+
857
---
958
## 5.0.0
1059

content/nic/technical-specifications.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ We test NGINX Ingress Controller on a range of Kubernetes platforms for each rel
1919
{{< bootstrap-table "table table-bordered table-striped table-responsive" >}}
2020
| NIC version | Kubernetes versions tested | NIC Helm Chart version | NIC Operator version | NGINX / NGINX Plus version | End of Technical Support |
2121
| --- | --- | --- | --- | --- | --- |
22-
| {{< nic-version >}} | 1.25 - 1.32 | {{< nic-helm-version >}} | {{< nic-operator-version >}} | 1.27.4 / R34 | - |
22+
| {{< nic-version >}} | 1.25 - 1.33 | {{< nic-helm-version >}} | {{< nic-operator-version >}} | 1.27.5 / R34 P1 | - |
23+
| 5.0.0 | 1.25 - 1.32 | 2.1.0 | 3.1.0 | 1.27.4 / R34 | Apr 16, 2027 |
2324
| 4.0.1 | 1.25 - 1.32 | 2.0.1 | 3.0.1 | 1.27.4 / R33 P2 | Feb 7, 2027 |
2425
| 3.7.2 | 1.25 - 1.31 | 1.4.2 | 2.4.2 | 1.27.2 / R32 P1 | Nov 25, 2026 |
2526
| 3.6.2 | 1.25 - 1.31 | 1.3.2 | 2.3.2 | 1.27.1 / R32 P1 | Aug 19, 2026 |
@@ -41,13 +42,13 @@ We provide the following Docker images, which include NGINX or NGINX Plus bundle
4142
From release `v5.1.0` onwards, NGINX Ingress Controller will no longer provide binaries for the `armv7`, `s390x` & `ppc64le` architectures.
4243
{{< /important >}}
4344

44-
_All images include NGINX 1.27.4._
45+
_All images include NGINX 1.27.5._
4546

4647
{{< bootstrap-table "table table-bordered table-responsive" >}}
4748
|<div style="width:200px">Name</div> | <div style="width:100px">Base image</div> | DockerHub image | Architectures |
4849
| ---| --- | --- | --- |
49-
|Alpine-based image | ``nginx:1.27.4-alpine``,<br>based on on ``alpine:3.21`` | ``nginx/nginx-ingress:{{< nic-version >}}-alpine`` | arm64<br>amd64 |
50-
|Debian-based image | ``nginx:1.27.4``,<br>based on on ``debian:12-slim`` | ``nginx/nginx-ingress:{{< nic-version >}}`` | arm64<br>amd64 |
50+
|Alpine-based image | ``nginx:1.27.5-alpine``,<br>based on on ``alpine:3.21`` | ``nginx/nginx-ingress:{{< nic-version >}}-alpine`` | arm64<br>amd64 |
51+
|Debian-based image | ``nginx:1.27.5``,<br>based on on ``debian:12-slim`` | ``nginx/nginx-ingress:{{< nic-version >}}`` | arm64<br>amd64 |
5152
|Ubi-based image | ``redhat/ubi9-minimal`` | ``nginx/nginx-ingress:{{< nic-version >}}-ubi`` | arm64<br>amd64 |
5253
{{% /bootstrap-table %}}
5354

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.1.0
1+
2.2.0

0 commit comments

Comments
 (0)