> For the complete documentation index, see [llms.txt](https://docs.perfectscale.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.perfectscale.io/2.0-self-hosted-or-perfectscale-documentation/getting-started/provisioner-installation-with-registry-override.md).

# Provisioner installation with Registry Override

Before proceeding, ensure your cluster meets the installation prerequisites. Review them [here](https://perfectscale.atlassian.net/wiki/spaces/DEVELOPMEN/pages/2257715211/Prerequisites+for+PerfectScale+Provisioner+in+Self-hosted+Kubernetes+Environments?atlOrigin=eyJpIjoiM2E3ZDEzNGIyNzE3NDBlMWE2ODY0ZmRiNDM2MzNlNjYiLCJwIjoiYyJ9).

## Copy container images to the target Registry

You need to copy container images from the PerfectScale public ECR to your target container registry. To clone container images, follow the steps below.

{% hint style="info" %}
Ensure you have the **provisioner binary**, **helmfile.yaml**, **config.yaml**, and **tenant\_id** provided by PerfectScale.
{% endhint %}

### Configure the config.yaml&#x20;

Use the following parameters to configure `config.yaml` .

```yaml
access_key: 
secret_key: 
suffix_url: "DNS name"
tenant_id: "vendor_tenant_id" # provided by PerfectScale
namespace: <namespace_name>
kube_context: <k8s_cluster_context>
kube_config: <path_to_kubeconfig_file>
helmfile: "helmfile.yaml" # provided by PerfectScale
registry_override: "your_container_registry_name"
```

### Turn off the token refresher

Turn off the `token refresher`  installation chart in the helmfile provided by PerfectScale.

```yaml
# In the helmfile search token refresher chart and modify `installedTemplate: false`
- chart: perfectscale-public/token-refresher
      version: 0.1.0
      name: token-refresher
      labels:
        group: infra
      installedTemplate: false
```

## The copy-image command <a href="#the-copy-image-command" id="the-copy-image-command"></a>

{% hint style="info" %}
Make sure you are logged in to your desired container registry
{% endhint %}

{% hint style="info" %}
**Example:** Azure container registry

```yaml
az login
az acr login --name your-registry-name
```

{% endhint %}

1. Run the `copy-image` command

To start copying container images from our container registry to your target registry, run the following command:

```
./provisioner copy-images
```

{% hint style="warning" %}
This operation may take some time. Ensure you have a stable internet connection throughout the process.
{% endhint %}

2. Install the provisioner

```
./provisioner install
```


---

# 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:

```
GET https://docs.perfectscale.io/2.0-self-hosted-or-perfectscale-documentation/getting-started/provisioner-installation-with-registry-override.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
