> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/cortex-xsoar-8-on-prem/8.10/configure-cortex-xsoar/integrations/change-the-docker-image-in-an-integration-or-script/pull-images-from-a-private-image-registry.md).

# Pull images from a private image registry

Pulling images from a private image registry enables securely accessing and deploying Cortex XSOAR custom content, for example, custom integrations containing scripts and code packaged into Docker images. You can then run the integrations and scripts in Cortex XSOAR.

**Before you begin**

* Before pulling a custom image ensure the image does not infringe on any licenses.
* If using an engine, connect the engine to the private image registry using Docker or Podman. See [Connect your engine to an image registry](/cortex-xsoar-8-on-prem/8.10/configure-cortex-xsoar/integrations/change-the-docker-image-in-an-integration-or-script/connect-your-engine-to-an-image-registry.md).

{% hint style="info" %}

### Note

(Multi-tenant) This feature is not supported on the Main Account.
{% endhint %}

1. Go to **Settings & Info** → **Settings** → **Advanced** → **Image Registry**.
2. Set **Use Additional Private Image Registry** to On.
3. Configure access to the private image registry and the images to pull.
   * Select the **Connection** to either **Direct** or **Using Engine**.

     For **Using Engine**:

     * Select the **Engine** to use. Authentication is set on the engine machine itself, not in the Cortex XSOAR tenant. For an example, see [Connect your engine to an image registry](/cortex-xsoar-8-on-prem/8.10/configure-cortex-xsoar/integrations/change-the-docker-image-in-an-integration-or-script/connect-your-engine-to-an-image-registry.md).

     For **Direct**:

     * Set the **Username** and **Password/Access Token**.
   * Define the **Registry URL**, for example registry.organization.com
   * Click **Test the connection** to make sure the connection to the registry works.
   * Define the **Import images** in `name:tag` format, for example myorg/python/new:2.7.18.24398 or myorg/python:latest

     You can add, edit, or remove images. If you don't specify a tag, the default tag `latest` will be added automatically, specifying the latest version of the image.

     <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><h3>Note</h3><p>The <code>demisto/</code> prefix cannot be used for custom registry images.</p></div>
4. Click **Save** to persist the configuration and initiate synchronization.

**Image synchronization**

When you click **Save** or **Update Docker Images**, Cortex XSOAR performs synchronization, which involves:

* Pulling the images from the external registry.
* Copying and storing the images locally.
* Updating the engines with the new images.

{% hint style="info" %}

### Note

The synchronization process make take time. The **Image Registry** page displays synchronization status (for example in progress, complete, failure).

If the engine fails to synchronize, it may be offline. When it goes back online, it will pull any new images when running scripts or integrations that use them.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cortex-docs.paloaltonetworks.com/cortex-xsoar-8-on-prem/8.10/configure-cortex-xsoar/integrations/change-the-docker-image-in-an-integration-or-script/pull-images-from-a-private-image-registry.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
