How to Deploy APMInsight Agent Docker Images in Air-Gapped (Offline) Environments or Private Repositories

How to Deploy APMInsight Agent Docker Images in Air-Gapped (Offline) Environments or Private Repositories

How to Deploy APMInsight Agent Docker Images in Air-Gapped (Offline) Environments

Overview

Air-gapped (isolated from internet) environments cannot pull images directly from public registries. To deploy an APMInsight agent Docker image in such an environment:

  1. Use an internet-enabled machine to pull the image from the public Docker Hub repository.
  2. Export the image as a .tar file.
  3. Transfer the file to the target environment.
  4. Push it to your private container registry.

Supported Agent Images

Agent
Docker Hub Image
Java
site24x7/apminsight-javaagent
.NET
site24x7/apminsight-dotnetagent
PHP
site24x7/apminsight-phpagent
Python
site24x7/apminsight-pythonagent
Node.js
site24x7/apminsight-nodejsagent

Prerequisites

  • A machine with internet access to pull images from Docker Hub
  • Docker installed on both the internet-enabled machine and the target environment
  • Access to a private container registry reachable from the air-gapped environment

Steps

  1. Pull and save the image (on a machine WITH internet access)
    docker pull <agent-image>:<tag>
    docker save -o <agent-image>.tar <agent-image>:<tag>
    Replace <agent-image> with the image name from the table above, and <tag> with the required version (or latest).

  2. Transfer the tar file
    Transfer the .tar file to a machine with access to your private registry, using SCP, SFTP, USB drive, or any approved file transfer method.

  3. Load the image
    docker load -i /path/to/<agent-image>.tar

  4. Tag the image for your private repository
    docker tag <agent-image>:<tag> <private-repo-url>/<image-name>:<tag>

  5. Push to your private repository
    docker login <private-repo-url>
    docker push <private-repo-url>/<image-name>:<tag>

Example (Java agent)

# On the internet-enabled machine
docker pull site24x7/apminsight-javaagent:latest
docker save -o apminsight-javaagent.tar site24x7/apminsight-javaagent:latest

# On the machine with access to the private registry
docker load -i apminsight-javaagent.tar
docker tag site24x7/apminsight-javaagent:latest myregistry.example.com/apminsight-javaagent:latest
docker login myregistry.example.com
docker push myregistry.example.com/apminsight-javaagent:latest
Note: For any other agent type, substitute the image name from the table above — the commands are identical.


Next Steps: Agent Onboarding

Onboarding steps (Kubernetes/OpenShift InitContainers, Docker Compose, etc.) are agent-specific — refer to the onboarding documentation for the agent you deployed. Replace the public image reference in that documentation with your private repository image URL.