Objective
Learn how to pull and run the official nTop Automate for Linux container image to execute headless nTop notebooks.
nTop Automate for Linux is the headless, command-line version of the nTop platform, designed for executing nTop notebooks without a GUI. To ensure a reliable, consistent experience, nTop publishes an official container image that includes the application and all necessary runtime dependencies.
Common Use Cases
- Cross-Platform Portability: Run nTop Automate reliably on any system that supports containers, regardless of the host operating system.
- Scalable Orchestration: Easily integrate nTop into automated workflows, pipelines, or cluster deployments.
Prerequisites
Before pulling the image, ensure your environment meets the following requirements:
- Container Runtime: Docker or Podman must be installed. The examples below utilize Docker commands.
- System Requirements: The host must meet the minimum system requirements for nTop.
- GPU Requirements: An NVIDIA GPU is required if your notebook utilizes GPU-accelerated blocks, such as Flow Analysis (LBM).
- Licensing: Each running container requires its own nTop Automate for Linux license while the nTop Automate process is active.
Procedure
- Pulling the Container Image
Run the following command to download the latest image to your local machine:
docker pull us-docker.pkg.dev/ntopweb/ntop-automate/ntop-automate:latest
Tip: To obtain a specific version, replace the :latest tag with a version string (e.g., 5.43.2). The oldest supported version is 5.43.2.
- Running the Container Image
You can execute nTop notebooks by mounting a volume containing your files and running ntopcl.
An example of running a notebook that accepts an input JSON file is below.
The example below mounts your current working directory $(pwd) to the /data directory inside the container. This allows the container to read your notebook and write any output files back to your host system.
Note: The present working directory of the host is used in the mount in this example, and the notebook.ntop and input.json files are within the present working directory of the host. The example passes these into ntopcl utilizing a relative path, which is possible because the working directory within the container is set to the mounted directory. If the notebook were to produce an output file in the mount directory, it would be written to the host file system and available when the container exited.
Note: this example uses a username and password to log into nTop. The containerized nTop Automate for Linux works the same as the native nTop Automate for Linux and any method of logging into nTop will work with the containerized product.
docker run --rm -v "$(pwd):/data:Z" -w /data us-docker.pkg.dev/ntopweb/ntop-automate/ntop-automate:latest ntopcl notebook.ntop --username <your ntop username> --password <your ntop password> -j input.json
- Passing through a GPU [Optional]
The image is built on the docker.io/nvidia/cuda:12.6.3-base-rockylinux8 base image and includes necessary drivers.
To pass through a GPU, please see the NVIDIA Container Toolkit documentation page. Only NVIDIA GPUs are currently supported.
- Notes and FAQ
- The image may be used as the base image in your own Dockerfile/Containerfile to produce a custom container image that has nTop Automate for Linux installed
- The container image can be used on a Windows host, but the container runtime (docker or podman) must be configured properly to run linux containers (WSL must be installed). Please reference official Docker/Podman documentation for more information on installing/configuring these tools on Windows.