How to Deploy APMInsight .NET Agent Docker Image in Air-Gapped (Offline) Environments

How to Deploy APMInsight .NET Agent Docker Image in Air-Gapped (Offline) Environments

This guide explains how to use the APMInsight .NET Agent Docker image in environments without direct internet access by transferring it through a private container registry.

Overview

Since air-gapped (isolated from internet) environments cannot pull images directly from public registries, you need to:
1. Use an internet-enabled machine to pull the image from the public Docker Hub
2. Export the image as a .tar file
3. Transfer the file to your environment
4. Push it to your private container registry

Prerequisites

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

Steps


Step 1: Pull and Save the Image (On a machine WITH internet access)
      On a machine that has internet connectivity, pull the image from the public repository and save it as a `.tar` file:
  1. docker pull site24x7/apminsight-dotnetagent:latest
  2. docker save -o apminsight-dotnetagent.tar site24x7/apminsight-dotnetagent:latest
This creates a .tar file in your current directory.

Step 2: Transfer the Tar File
      Transfer the .tar file from the internet-enabled machine to a machine that has access to your private registry. Use SCP, SFTP, USB drive, or any approved file transfer method.

Step 3: Load the Image
      On the machine with access to your private registry, load the image:
  1. docker load -i /path/to/apminsight-dotnetagent.tar

Step 4: Tag the Image for Your Private Repository
  1. docker tag site24x7/apminsight-dotnetagent:latest <private-repo-url>/<image-name>:<tag>
Step 5: Push to Your Private Repository
  1. docker login <private-repo-url>
  2. docker push <private-repo-url>/<image-name>:<tag>


Example

Steps to be followed once image's tar file is created from machine with internet access

# Step 1: Load the image
docker load -i apminsight-dotnetagent.tar

# Step 2: Verify the image is loaded
docker images | grep apminsight-dotnetagent

# Step 3: Tag for your private registry
docker tag site24x7/apminsight-dotnetagent:latest myregistry.example.com/apminsight-dotnetagent:latest

# Step 4: Login to your private registry
docker login myregistry.example.com

# Step 5: Push to private repository
docker push myregistry.example.com/apminsight-dotnetagent:latest

Note: To use a specific version instead of latest, replace the tag in all commands.
For example, use site24x7/apminsight-dotnetagent:7.0.2 instead of site24x7/apminsight-dotnetagent:latest

Next Steps: Agent Onboarding

For onboarding the .NET agent in a Linux OpenShift/Kubernetes environment, refer to Adding APMInsight .NET Agent in Kubernetes via InitContainers

Important: Replace the public image reference (site24x7/apminsight-dotnetagent:latest) in the onboarding documentation with your private repository image URL.

                    New to ADSelfService Plus?