Run the NGINX Agent in a container
Overview
This guide serves as a step-by-step guide to run NGINX Agent in a container. It covers the basic setup needed to get the NGINX Agent up and running efficiently and securely.
Before you begin
Before you begin this guide ensure:
Note:
This guide uses Docker but NGINX Agent also works with other container applications.
- Docker: Ensure Docker is installed and configured on your system. Download Docker from the official site.
- Credentials: Acquire any necessary authentication tokens or credentials required for the NGINX Agent.
Prepare the environment
To run NGINX Agent in a container you will need to download the NGINX Agent container image and create a configuration file.
Pull the NGINX Agent container image
The NGINX Agent container image must be downloaded from a trusted source such as Docker Hub or a private container registry.
Run the following command to pull the official image:
<!-- Registry HERE -->
docker pull <Registry HERE>:latest
Ensure you are using the correct image version. Replace latest
with the desired version tag if necessary.
Create a configuration file
Create a configuration file named nginx-agent.conf
in your current directory
and populate the file with the following structure:
command:
server:
host: "<NGINX-One-Console-URL>" # Command server host
port: 443 # Command server port
auth:
token: "<your-data-plane-key-here>" # Authentication token for the command server
tls:
skip_verify: false
Replace the placeholder values:
<NGINX-One-Console-URL>
: The URL of your NGINX One Console instance.<your-data-plane-key-here>
: Your Data Plane access token.
Run the container
Run the NGINX Agent container with the configuration file mounted.
Use the following command:
docker run -d \
--name nginx-agent \
-v $(pwd)/nginx-agent.conf:/etc/nginx-agent/nginx-agent.conf \
nginx/agent:latest
Key options explained:
-d
: Runs the container in detached mode.--name nginx-agent
: Assigns a name to the container for easy identification.-v $(pwd)/nginx-agent.conf:/etc/nginx-agent/nginx-agent.conf
: Mounts the configuration file into the container.
Verify the container is running
Check the running status of the container:
docker ps
You should see an entry for nginx-agent
. The STATUS
field indicates that the container is running.
Monitor logs
To ensure the container is functioning properly and communicating with NGINX One Console, monitor the container logs.
Run the following command:
docker logs -f nginx-agent
Look for log entries indicating successful connection to the NGINX One Console and periodic metric transmission.