Last updated
Last updated
You can install the ThousandEyes Device Agent in a Docker container on a 64-bit Linux distribution with kernel version 5.15 or later. It functions like the Router Agent and can be deployed on desktop computers or servers, managed like any other router. The only difference with Docker Device agent is there is no cross-traffic detection.
Currently, only x86
computers are supported. The aarch64/ARM64 such as Mac M1 machines are not supported.
Certain performance optimisations require system administrator privileges, so for current versions only "rootful" docker runtimes are supported.
The Device Agent occupies 15 MB of disk space and requires at least 50 MB of RAM for speed tests. For video streaming tests, it may need 250 MB of RAM or more, depending on the service and bandwidth.
A client ID is needed for installation and must be linked to the appropriate account group in your organization. This directs the Docker agent to the correct account group upon registration. Please contact your account manager to set this up.
You need to have Docker installed - as mentioned above, to support all tests this must be able to run containers with root privileges.
Pull the latest image from DockerHub:
a. You can also define a specific version published . The differences between versions of the agent are documented in the .
For example, docker pull thousandeyes/device-agent:v6.3.1
Start the agent container detached from your terminal (-d
).
a. On all platforms except Windows:
b. On Windows, running Docker Desktop or Docker in a WSL2 machine:
Copy the UUID output above (in this case 4C4C4544-0034-5310-8054-B8C04F334D32
) and use it in the next command:
If successful, the agent will start in the background and a container ID will be printed to your terminal. To get the agent's unit ID, check the logs by running:
You will see the container’s logs, populated with entries from the agent. Search the logs for ‘Activation response’ to find the Unit ID for your docker agent - it will look similar to this:
In the above example, '75749573' is the unit ID.
You can now find the agent using the unit ID within . For any troubleshooting, your account manager may require this ID.
To update the agent, follow the instructions below (make sure to replace <version>
by the version you intend to upgrade or latest
if they want to use the latest release):
Find the container ID of the running agent:
Stop the container:
Remove the container:
Re-install the latest (or replace version with latest
for the latest release):
Start the agent as per the regular instructions, using the new version string (or latest
).
First, delete the existing container and install a new agent by following the instructions provided earlier. If the Docker agent keeps the same MAC address, both the agent and its data will remain intact.
If the agent is currently stopped, start with step 3. If it is running, please stop it first before by proceeding from step 2.
As mentioned above, some tests will not work in a rootful container runtime, such as podman when run as a regular user: in particular, setting certain capabilities will silently fail, causing some tests to fail to run.
are not currently supported.
may fail because of the lack of ability to create raw IP frames.
may fail for the same reason.