Your data. Anywhere you go.

New Relic for iOS or Android

Download on the App Store    Android App on Google play

New Relic Insights App for iOS

Download on the App Store

Learn more

Close icon

Relic Solution: Using the Containerized Private Minion with a Private Image Registry



Currently we have the Containerized Private Minion image hosted on the image registry by default, or alternatively on docker hub:

If you use an alternative registry like docker hub, you’ll need to also set the environment variable MINION_DOCKER_RUNNER_REGISTRY_ENDPOINT so that minion is able to pull the synthetics-minion-runner image from the same registry when it starts up.

The synthetics-minion-runner is the image that is used for runner containers which Scripted and Browser monitor checks are performed in. More on runners here:

If your network environment though requires explicit allow listing of external IPs this can become a problem as both and docker hub use CDNs to distribute image resources.

An alternative then is to obtain the synthetics-minion and synthetics-minion-runner images on an intermediate device outside of that network context, and then host them in private registry in the locked down context.

To demonstrate this process we can use the docker registry image

Create a registry - for local demonstration

docker run -d -p 5000:5000 --restart=always --name test-registry registry:2

Pull synthetics-minion from

docker pull

Tag the synthetics-minion image for the new registry

docker tag  localhost:5000/newrelic/synthetics-minion:2.2.15

Push synthetics-minion to the new registry

docker push localhost:5000/newrelic/synthetics-minion:2.2.15

Pull synthetics-minion-runner from Note the runner has to be the same version as the minion

docker pull

Tag synthetics-minion-runner image for the new registry

docker tag localhost:5000/newrelic/synthetics-minion-runner:2.2.15

Push synthetics-minion-runner to the new registry

docker push localhost:5000/newrelic/synthetics-minion-runner:2.2.15

Run the minion

docker run -d -e  MINION_PRIVATE_LOCATION_KEY=<your-location-key> \ 
 -e "MINION_LOG_LEVEL=debug"  \
 -v /tmp:/tmp:rw  \
 -v /var/run/docker.sock:/var/run/docker.sock:rw \
 -p 8080:8080 -p 8180:8180 \

More on deploying a private registry here: