Dokumen ini menjelaskan cara mengonfigurasi Apigee hybrid untuk menggunakan image dari repositori image container pribadi.
Ringkasan
Semua image runtime campuran Apigee dihosting di
Google Cloud Container Registry (GCR). Jika karena alasan apa pun Anda ingin menggunakan repositori penampung image pribadi,
Anda dapat mendownload image dari GCR, mendorongnya ke repositori pribadi, dan mengganti
lokasi image default dalam file overrides.yaml.
Langkah konfigurasi
Ikuti langkah-langkah berikut untuk menggunakan repositori penampung image pribadi untuk image campuran Apigee. Untuk
melakukan langkah-langkah ini dan berhasil menggunakan image di repositori pribadi, Anda harus memahami
prosedur penginstalan hibrida Apigee. Dalam skenario
umum, Anda akan berencana mengonfigurasi repositori pribadi sebagai bagian dari penginstalan campuran baru.
Kirim image campuran Apigee dari GCR ke repositori pribadi Anda. Sebaiknya gunakan utilitas
apigee-push-pull untuk menyelesaikan langkah ini.
Jika Anda memilih untuk melakukan langkah ini secara manual, Anda harus menginstal Docker dan menggunakan perintah docker pull sebagai berikut. Pastikan untuk menambahkan tag yang benar
ke setiap nama gambar. Misalnya, tag untuk apigee-synchronizer adalah 1.11.2,
seperti yang ditunjukkan di bawah.
Dapatkan daftar terbaru semua image dalam project
saat ini dengan opsi --list dari
utilitas apigee-pull-push.sh di
direktori apigeectl/tools/:
Tambahkan Secret ke file overrides.yaml Anda. Pembuatan file penggantian dijelaskan dalam langkah-langkah penginstalan hybrid. Lihat Mengonfigurasi cluster untuk mengetahui detailnya.
imagePullSecrets:
- name: SECRET_NAME
Perbarui file overrides.yaml dengan URL gambar untuk gambar yang disimpan di repositori pribadi Anda. Setiap komponen yang disimpan di repositori memiliki elemen image:url. Gunakan elemen ini untuk menentukan URL setiap gambar komponen. Contoh:
Ikuti pola ini untuk memperbarui setiap komponen campuran tingkat atas dalam file overrides.yaml dengan
URL image repositori pribadinya. Contoh lengkap file penggantian disediakan dengan penginstalan campuran Anda di
direktori
$APIGEECTL_HOME/examples/private-overrides.yaml.
Sekarang Anda dapat menyelesaikan penginstalan campuran baru menggunakan image pribadi, atau mengupdate penginstalan
yang ada. Lihat langkah-langkah penginstalan Apigee Hybrid untuk mengetahui informasi selengkapnya.
Menginstal cert-manager dari repositori pribadi
Untuk menginstal cert-manager dari repositori pribadi, lihat
Menginstal dengan Helm.
Anda harus menginstal cert-manager versi yang sama seperti yang ditentukan dalam petunjuk penginstalan Apigee Hybrid untuk memastikan kompatibilitas.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-09-03 UTC."],[[["\u003cp\u003eThis document guides you through configuring Apigee hybrid to utilize images from a private container image repository instead of the default Google Cloud Container Registry.\u003c/p\u003e\n"],["\u003cp\u003eYou can use the \u003ccode\u003eapigee-pull-push\u003c/code\u003e utility, or manually use Docker commands to pull Apigee hybrid images from GCR, and then push them to your designated private repository.\u003c/p\u003e\n"],["\u003cp\u003eA Kubernetes Secret needs to be created in both the \u003ccode\u003eapigee\u003c/code\u003e and \u003ccode\u003eapigee-system\u003c/code\u003e namespaces to enable access to your private image repository.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eoverrides.yaml\u003c/code\u003e file must be updated to include the new image URLs and the Secret name, which will direct Apigee hybrid to use images from the private repository during installation or updates.\u003c/p\u003e\n"],["\u003cp\u003eInstallation of \u003ccode\u003ecert-manager\u003c/code\u003e from your private repository can be done following the Helm instructions, ensuring the same version as the Apigee hybrid installation instructions for compatibility.\u003c/p\u003e\n"]]],[],null,["# Use a private image repository with apigeectl\n\n| You are currently viewing version 1.11 of the Apigee hybrid documentation. **This version is end of life.** You should upgrade to a newer version. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n| **Note:** These procedures include instructions for using `apigeectl`. If you are using Helm charts to manage Apigee hybrid, see [Use a private image repository with Helm charts](/apigee/docs/hybrid/v1.11/container-images-helm).\n\n\nThis document explains how to configure Apigee hybrid to use images from a private container image repository.\n\nOverview\n--------\n\n\nAll Apigee hybrid runtime images are hosted in the [Google Cloud Container Registry](/container-registry) (GCR). If for any reason you wish to employ a private image container repository,\nyou can download the images from GCR, push them to your private repository, and override\nthe default image locations in your `overrides.yaml` file.\n\nConfiguration steps\n-------------------\n\n\nFollow these steps to use a private image container repository for the Apigee hybrid images. To\nperform these steps and successfully use the images in your private repository, you must be familiar\nwith the [Apigee hybrid installation procedure](/apigee/docs/hybrid/v1.11/install-before-begin). In a typical\nscenario, you would plan to configure the private repository as part of a fresh hybrid installation.\n\n1. Push the Apigee hybrid images from GCR to your private repository. We recommend that you use the [apigee-push-pull](/apigee/docs/hybrid/v1.11/apigee-pull-push) utility to accomplish this step.\n\n If you prefer to do this step manually, you need to have [Docker](https://docs.docker.com/get-started/)\n installed and use the `docker pull` command as follows. Be sure to append the correct tag\n to each image name. For example, the tag for `apigee-synchronizer` is `1.11.2`,\n as shown below.\n 1. Get an up to date list of all images in your current project with the `--list` option of the [`apigee-pull-push.sh` utility](/apigee/docs/hybrid/v1.11/apigee-pull-push) in the `apigeectl/tools/` directory: \n\n ```\n apigee-pull-push.sh --list\n ```\n 2. Your output should look something like: \n\n ```\n apigee:\n gcr.io/apigee-release/hybrid/apigee-mart-server:1.11.2\n gcr.io/apigee-release/hybrid/apigee-synchronizer:1.11.2\n gcr.io/apigee-release/hybrid/apigee-runtime:1.11.2\n gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.11.2\n gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.11.2\n gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.11.2\n gcr.io/apigee-release/hybrid/apigee-udca:1.11.2\n gcr.io/apigee-release/hybrid/apigee-connect-agent:1.11.2\n gcr.io/apigee-release/hybrid/apigee-watcher:1.11.2\n gcr.io/apigee-release/hybrid/apigee-operators:1.11.2\n gcr.io/apigee-release/hybrid/apigee-installer:1.11.2\n gcr.io/apigee-release/hybrid/apigee-redis:1.11.2\n gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.11.2\n gcr.io/apigee-release/hybrid/apigee-diagnostics-runner:1.11.2\n gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.11.2\n third party:\n gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.10.5\n gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.52.0\n gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0\n gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.18.0\n gcr.io/apigee-release/hybrid/apigee-envoy:v1.27.0\n gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.12.0\n gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.18.7-asm.26-distroless\n gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.18.7-asm.26-distroless\n gcr.io/apigee-release/hybrid/apigee-fluent-bit:3.0.3\n ```\n 3. Pull the images needed for the `apigee-system` and \u003cvar translate=\"no\"\u003eapigee\u003c/var\u003e namespaces with the `docker pull` command. For example: \n\n ```\n docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.11.2\n ```\n\n The following list shows the images needed for each namespace:\n\n ### `apigee-system` namespace\n\n - `apigee-installer`\n - `apigee-kube-rbac-proxy`\n - `apigee-operators`\n\n ### Your \u003cvar translate=\"no\"\u003eapigee\u003c/var\u003e namespace\n\n - `apigee-asm-ingress`\n - `apigee-asm-istiod`\n - `apigee-cassandra-backup-utility`\n - `apigee-connect-agent`\n - `apigee-diagnostics-collector`\n - `apigee-diagnostics-runner`\n - `apigee-envoy`\n - `apigee-fluent-bit`\n - `apigee-hybrid-cassandra-client`\n - `apigee-hybrid-cassandra`\n - `apigee-mart-server`\n - `apigee-prom-prometheus`\n - `apigee-prometheus-adapter`\n - `apigee-redis`\n - `apigee-runtime`\n - `apigee-stackdriver-logging-agent`\n - `apigee-stackdriver-prometheus-sidecar`\n - `apigee-synchronizer`\n - `apigee-udca`\n - `apigee-watcher`\n 4. After you pull and tag the images, push them to your private repository. See [docker\n push](https://docs.docker.com/engine/reference/commandline/push/).\n2. Create a Kubernetes Secret in the `apigee` and `apigee-system` namespaces.\n\n If these namespaces do not exist in your cluster, you must create them before performing this step.\n\n For steps to create the Secret, see [Create a Secret by providing credentials on the command line](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/#create-a-secret-by-providing-credentials-on-the-command-line).\n For example, to create a secret in the `apigee-system` namespace: \n\n ```\n kubectl create secret docker-registry SECRET_NAME -n apigee-system \\\n --docker-server=YOUR_REGISTRY_SERVER \\\n --docker-username=YOUR_DOCKER_USERNAME \\\n --docker-email=YOUR_DOCKER_EMAIL \\\n --docker-password=\"YOUR_DOCKER_PASSWORD)\"\n ```\n\n\n To create a Secret in the `apigee` namespace: \n\n ```\n kubectl create secret docker-registry SECRET_NAME -n apigee \\\n --docker-server=YOUR_REGISTRY_SERVER \\\n --docker-username=YOUR_DOCKER_USERNAME \\\n --docker-email=YOUR_DOCKER_EMAIL \\\n --docker-password=\"YOUR_DOCKER_PASSWORD)\"\n ```\n3. Add the Secret to your `overrides.yaml` file. Creation of the overrides file is described in the hybrid installation steps. See [Configure the cluster](/apigee/docs/hybrid/v1.11/install-configure-cluster) for details. \n\n ```\n imagePullSecrets:\n - name: SECRET_NAME\n ```\n4. Update your `overrides.yaml` file with image URLs for the images stored in your private repository. Each component that is stored in the repository has an `image:url` element. Use this element to specify the URL of each component image. For example: \n\n ```\n mart:\n serviceAccountPath: /installdir/hybrid-files/service-accounts/hybrid-apigee-non-prod.json\n image:\n url: my-docker.pkg.dev/hybrid-1/registry-name/apigee-mart-server\n ```\n\n\n Follow this pattern to update each top-level hybrid component in your `overrides.yaml` file with its\n private repository image URL. A complete example overrides file is provided with your hybrid installation in\n **$APIGEECTL_HOME**`/examples/private-overrides.yaml`\n directory.\n | **Note:** You only need to update the `url` property. You can accept the default values for the `tag` and `pullPolicy` properties. For a complete list of components and their configuration properties, see also [Configuration property reference](/apigee/docs/hybrid/v1.11/config-prop-ref).\n\n\nYou can now complete a new hybrid installation using the private images, or update your existing\ninstallation. See the [Apigee hybrid installation steps](/apigee/docs/hybrid/v1.11/install-before-begin) for more information.\n\nInstalling cert-manager from a private repository\n-------------------------------------------------\n\n\nTo install `cert-manager` from your private repository, see\n[Installing with Helm](https://cert-manager.io/docs/installation/helm/).\nIt is important that you install the same version of `cert-manager` as specified\nin the [Apigee hybrid installation](/apigee/docs/hybrid/v1.11/install-cert-manager) instructions to ensure compatibility."]]