+ What is the Replicated image pull secret?
+ During application deployment, KOTS automatically creates an `imagePullSecret` with `type: kubernetes.io/dockerconfigjson` that is based on the customer license. This secret is used to authenticate with the proxy registry and grant proxy access to private images. For information about how Kubernetes uses the `kubernetes.io/dockerconfigjson` Secret type to authenticate to a private image registry, see [Pull an Image from a Private Registry](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/) in the Kubernetes documentation.
+
+
+ **Example**:
+
+ ```yaml
+ # kots.io/v1beta2 HelmChart custom resource
+
+ apiVersion: kots.io/v1beta2
+ kind: HelmChart
+ metadata:
+ name: samplechart
+ spec:
+ values:
+ image:
+ # Get the pull secret name with ImagePullSecretName
+ pullSecrets:
+ - name: '{{repl ImagePullSecretName }}'
+ ```
+ Ensure that you provide this pull secret in any Pod definitions that reference images to be pulled through the proxy registry.
+
+ **Example**:
+
+ ```yaml
+ apiVersion: v1
+ kind: Pod
+ metadata:
+ name: nginx
+ spec:
+ containers:
+ - name: nginx
+ image: {{ .Values.image.registry }}/{{ .Values.image.repository }}
+ # Access the value to provide the KOTS pull secret
+ {{- with .Values.image.pullSecrets }}
+ imagePullSecrets:
+ {{- toYaml . | nindent 2 }}
+ {{- end }}
+ ```
\ No newline at end of file
diff --git a/docs/partials/proxy-service/_step-rewrite-helm-values.mdx b/docs/partials/proxy-service/_step-rewrite-helm-values.mdx
new file mode 100644
index 0000000000..8a892e926f
--- /dev/null
+++ b/docs/partials/proxy-service/_step-rewrite-helm-values.mdx
@@ -0,0 +1,33 @@
+For each image reference in your Helm chart values file, set the image repository URL to the location of the image in the proxy registry. The domain for this URL is either `proxy.replicated.com` or your custom domain.
+
+ The proxy registry URL has the following format: `DOMAIN/proxy/APP_SLUG/EXTERNAL_REGISTRY_IMAGE_URL`
+
+ Where:
+ * `DOMAIN` is either `proxy.replicated.com` or your custom domain.
+ * `APP_SLUG` is the unique slug of your application.
+ * `EXTERNAL_REGISTRY_IMAGE_URL` is the path to the private image on your external registry.
+
+ **Example:**
+
+ ```yaml
+ # values.yaml
+ api:
+ image:
+ # proxy.replicated.com or your custom domain
+ registry: proxy.replicated.com
+ repository: proxy/your-app/ghcr.io/cloudnative-pg/cloudnative-pg
+ tag: catalog-1.24.0
+ ```
+
+ Ensure that any references to the image in your Helm chart access the field from your values file.
+
+ **Example**:
+
+ ```yaml
+ apiVersion: v1
+ kind: Pod
+ spec:
+ containers:
+ - name: api
+ # Access the registry, repository, and tag fields from the values file
+ image: {{ .Values.image.api.registry }}/{{ .Values.image.api.repository }}:{{ .Values.image.api.tag }}
\ No newline at end of file
diff --git a/docs/vendor/replicated-onboarding.mdx b/docs/vendor/replicated-onboarding.mdx
index a3cc62e120..7183f0dd0c 100644
--- a/docs/vendor/replicated-onboarding.mdx
+++ b/docs/vendor/replicated-onboarding.mdx
@@ -6,6 +6,9 @@ import Requirements from "../partials/embedded-cluster/_requirements.mdx"
import SDKOverview from "../partials/replicated-sdk/_overview.mdx"
import TestYourChanges from "../partials/getting-started/_test-your-changes.mdx"
import UnauthorizedError from "../partials/replicated-sdk/_401-unauthorized.mdx"
+import StepCreds from "../partials/proxy-service/_step-creds.mdx"
+import RewriteHelmValues from "../partials/proxy-service/_step-rewrite-helm-values.mdx"
+import InjectPullSecret from "../partials/proxy-service/_step-inject-pull-secret.mdx"
# Onboard to the Replicated Platform
@@ -83,11 +86,21 @@ To create an application:
export REPLICATED_APP=my-app
```
-### Task 2: Connect Your Image Registry
+### Task 2: Modify Image References in Helm Values to Point to the Proxy Registry {#task-2}
-Add credentials for your image registry to the Vendor Portal. This will allow you to use the Replicated proxy registry in a later step so that you can grant proxy access to application images without exposing registry credentials to your customers.
+Update your Helm values so that image references point to the Replicated proxy registry rather than to your default registry. The proxy regsitry allows you can grant proxy access to application images without exposing registry credentials to your customers.
-For more information, see [Connect to an External Registry](/vendor/packaging-private-images).
+To modify image references to point to the proxy registry:
+
+1.