docs: add Registry v2 documentation#867
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughThis PR adds comprehensive Registry v2 documentation across developer and administrator guides. It establishes a two-track navigation strategy (legacy versus Registry v2), documents the Operator-managed architecture and deployment, covers storage backends and configuration, explains access patterns and authentication, covers external exposure, and provides end-to-end image management and cleanup workflows. ChangesRegistry v2 Documentation Suite
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
docs/en/developer/registry/registry_v2/accessing_the_registry.mdx (1)
23-46: ⚡ Quick winConsider using
ac create rolebindingfor consistency with existing documentation.The existing Registry documentation in
common_cli_command.mdxusesac create rolebindingfor namespace permission grants. Whilekubectlcommands work correctly, usingacwould maintain consistency across the Registry v2 documentation suite.Based on learnings from
docs/en/developer/registry/how_to/common_cli_command.mdx:42-110, which documentsac create rolebindingas the standard approach for Registry namespace permissions.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/developer/registry/registry_v2/accessing_the_registry.mdx` around lines 23 - 46, Replace the three occurrences of the kubectl rolebinding commands (the lines starting with "kubectl create rolebinding image-puller-user", "kubectl create rolebinding image-pusher-user", and "kubectl create rolebinding image-puller-sa") with the equivalent "ac create rolebinding" commands to match the project's documented standard (as used in common_cli_command.mdx); keep the same flags (--clusterrole, --user, --serviceaccount, -n) and placeholder values so behavior is unchanged while ensuring consistency across Registry v2 docs.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/en/developer/registry/registry_v2/migrating_from_legacy_registry.mdx`:
- Around line 221-223: The awk-based parsing of column positions is brittle
because `ac get imagestreamtags` uses default table output; update the two
command invocations (the one printing "$4 $6" for the main stream and the one
that sets VERIFY_REF from "$VERIFY_STREAM:$VERIFY_TAG") to request
wide/structured output by adding `-o wide` (or another structured format) to the
`ac get imagestreamtags` calls before piping to `awk`, ensuring stable column
positions for `$4`/`$6` extraction.
- Around line 85-90: Update the ac login snippet so it conditionally includes
the optional flags instead of always passing empty values: when ACP_IDP is set
include --idp "$ACP_IDP", and when ACP_AUTH_TYPE is set include --auth-type
"$ACP_AUTH_TYPE"; leave --username, --password, --name, --kubeconfig unchanged.
Modify the code that constructs the ac login command (the snippet using ac login
and variables like ACP_SESSION_NAME, ACP_USERNAME, ACP_PASSWORD, ACP_AUTH_TYPE,
ACP_IDP, MIGRATION_KUBECONFIG) to only append the --idp and --auth-type
arguments when their corresponding environment variables are non-empty.
- Around line 363-368: Several examples unconditionally include the --insecure
flag; update the documented commands so --insecure is not hardcoded and is only
used conditionally for HTTP/self-signed/test cert registries: remove the literal
"--insecure" from the ac image mirror examples (dry-run/copy/rerun) and from ac
image info invocations and from the metadata backfill invocation, and instead
add a short parenthetical or placeholder (e.g., "[--insecure when using
HTTP/self‑signed certs]") after the command examples so readers know to add it
only when appropriate; specifically edit the examples referencing ac image
mirror, ac image info, and the metadata backfill function call to remove the
unconditional flag and add the conditional note.
---
Nitpick comments:
In `@docs/en/developer/registry/registry_v2/accessing_the_registry.mdx`:
- Around line 23-46: Replace the three occurrences of the kubectl rolebinding
commands (the lines starting with "kubectl create rolebinding
image-puller-user", "kubectl create rolebinding image-pusher-user", and "kubectl
create rolebinding image-puller-sa") with the equivalent "ac create rolebinding"
commands to match the project's documented standard (as used in
common_cli_command.mdx); keep the same flags (--clusterrole, --user,
--serviceaccount, -n) and placeholder values so behavior is unchanged while
ensuring consistency across Registry v2 docs.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 977094e8-5274-4e93-84fd-2958ef514d10
📒 Files selected for processing (9)
docs/en/developer/registry/index.mdxdocs/en/developer/registry/registry_v2/accessing_the_registry.mdxdocs/en/developer/registry/registry_v2/exposing_the_registry.mdxdocs/en/developer/registry/registry_v2/image_registry_operator.mdxdocs/en/developer/registry/registry_v2/index.mdxdocs/en/developer/registry/registry_v2/managing_images_with_ac.mdxdocs/en/developer/registry/registry_v2/migrating_from_legacy_registry.mdxdocs/en/developer/registry/registry_v2/registry_overview.mdxdocs/en/developer/registry/registry_v2/setting_up_and_configuring_the_registry.mdx
Deploying alauda-container-platform with
|
| Latest commit: |
e2cff46
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://2d80c777.alauda-container-platform.pages.dev |
| Branch Preview URL: | https://codex-new-registry-docs.alauda-container-platform.pages.dev |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/en/developer/registry/registry_v2/migrating_from_legacy_registry.mdx`:
- Line 68: The current initialization sets REGISTRY_INSECURE_FLAG default to
"--insecure", making insecure TLS the default; change the default to empty so
the flag is only present when explicitly set. Replace the export of
REGISTRY_INSECURE_FLAG="${REGISTRY_INSECURE_FLAG:---insecure}" with a
default-empty form (e.g., REGISTRY_INSECURE_FLAG="${REGISTRY_INSECURE_FLAG:-}"
or remove the default) so mirror/info/login commands do not skip cert
verification unless the user explicitly supplies "--insecure"; update any
surrounding text referencing REGISTRY_INSECURE_FLAG to reflect the new explicit
opt-in behavior.
In
`@docs/en/developer/registry/registry_v2/setting_up_and_configuring_the_registry.mdx`:
- Around line 193-206: The dry-run example uses different retention flags than
the confirmed run; update the first `ac adm prune images` example to include the
same flags `--keep-tag-revisions=5` and `--keep-younger-than=72h` so both runs
match, and leave `--confirm` only on the second `ac adm prune images ...
--confirm` example; ensure the two command examples are identical except for the
added `--confirm` flag.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 8d0db935-c9cd-434c-9963-369bd60ab9ad
📒 Files selected for processing (9)
docs/en/developer/registry/index.mdxdocs/en/developer/registry/registry_v2/accessing_the_registry.mdxdocs/en/developer/registry/registry_v2/exposing_the_registry.mdxdocs/en/developer/registry/registry_v2/image_registry_operator.mdxdocs/en/developer/registry/registry_v2/index.mdxdocs/en/developer/registry/registry_v2/managing_images_with_ac.mdxdocs/en/developer/registry/registry_v2/migrating_from_legacy_registry.mdxdocs/en/developer/registry/registry_v2/registry_overview.mdxdocs/en/developer/registry/registry_v2/setting_up_and_configuring_the_registry.mdx
✅ Files skipped from review due to trivial changes (6)
- docs/en/developer/registry/registry_v2/registry_overview.mdx
- docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx
- docs/en/developer/registry/registry_v2/index.mdx
- docs/en/developer/registry/index.mdx
- docs/en/developer/registry/registry_v2/exposing_the_registry.mdx
- docs/en/developer/registry/registry_v2/accessing_the_registry.mdx
🚧 Files skipped from review as they are similar to previous changes (1)
- docs/en/developer/registry/registry_v2/image_registry_operator.mdx
| Preview manual pruning before applying it: | ||
|
|
||
| ```bash | ||
| ac adm prune images | ||
| ``` | ||
|
|
||
| Add `--confirm` only after reviewing the dry-run output: | ||
|
|
||
| ```bash | ||
| ac adm prune images \ | ||
| --keep-tag-revisions=5 \ | ||
| --keep-younger-than=72h \ | ||
| --confirm | ||
| ``` |
There was a problem hiding this comment.
Keep dry-run and confirmed prune flags identical.
The preview and confirm commands currently use different retention parameters, so the dry-run output may not represent what --confirm will actually delete. Keep flags the same in both commands and only add --confirm on the second run.
Suggested doc fix
-Preview manual pruning before applying it:
+Preview manual pruning before applying it (with the same flags you plan to confirm):
```bash
-ac adm prune images
+ac adm prune images \
+ --keep-tag-revisions=5 \
+ --keep-younger-than=72hAdd --confirm only after reviewing the dry-run output:
ac adm prune images \
--keep-tag-revisions=5 \
--keep-younger-than=72h \
--confirm</details>
<details>
<summary>🤖 Prompt for AI Agents</summary>
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In
@docs/en/developer/registry/registry_v2/setting_up_and_configuring_the_registry.mdx
around lines 193 - 206, The dry-run example uses different retention flags than
the confirmed run; update the first ac adm prune images example to include the
same flags --keep-tag-revisions=5 and --keep-younger-than=72h so both runs
match, and leave --confirm only on the second ac adm prune images ... --confirm example; ensure the two command examples are identical except for the
added --confirm flag.
</details>
<!-- fingerprinting:phantom:medusa:hawk -->
<!-- This is an auto-generated comment by CodeRabbit -->
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx (1)
116-117:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winRemove unnecessary escape characters from inline code.
The backslashes before pipes in
source\|localandLegacy\|PreserveOriginalare unnecessary and will render literally in the documentation. In MDX, backticks already protect the content from being interpreted as table delimiters.📝 Proposed fix
-| `--reference-policy=source\|local` | Control whether workloads use the source reference or the local Registry reference. | +| `--reference-policy=source|local` | Control whether workloads use the source reference or the local Registry reference. | -| `--import-mode=Legacy\|PreserveOriginal` | Select how manifest lists and related image metadata are imported. | +| `--import-mode=Legacy|PreserveOriginal` | Select how manifest lists and related image metadata are imported. |🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx` around lines 116 - 117, Remove the unnecessary backslashes in the inline code examples so the pipe characters are not escaped: change `source\|local` to `source|local` and `Legacy\|PreserveOriginal` to `Legacy|PreserveOriginal` in the table row strings (look for the inline code snippets containing `--reference-policy` and `--import-mode` in the file) so MDX renders the code literals correctly without literal backslashes.
🧹 Nitpick comments (2)
docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx (2)
309-311: 💤 Low valueConsider using an absolute MDX link.
The relative link with three
../traversals works correctly but could be replaced with an absolute path for improved clarity:/configure/registry/registry_v2/managing_access_and_cleanup.mdx.Based on learnings: In
alauda/acp-docs, absolute MDX links are preferred when relative links require many../traversals.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx` around lines 309 - 311, The relative MDX link "../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx" should be replaced with the project-preferred absolute MDX path "/configure/registry/registry_v2/managing_access_and_cleanup.mdx"; update the link in the "Administrative Operations" section (the line containing the relative link) to use the absolute path string so the document points directly to the target without "../" traversal.Source: Learnings
41-41: 💤 Low valueConsider using an absolute MDX link.
The relative link with three
../traversals works correctly but could be replaced with an absolute path for improved clarity:/configure/registry/registry_v2/managing_access_and_cleanup.mdx.Based on learnings: In
alauda/acp-docs, absolute MDX links are preferred when relative links require many../traversals.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx` at line 41, The relative MDX link "../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx" in the sentence "Administrative usage reporting, cleanup, and trust verification are documented in [Managing Registry v2 access and cleanup](...)" should be replaced with the absolute path "/configure/registry/registry_v2/managing_access_and_cleanup.mdx"; update the link target in that link occurrence so it becomes [Managing Registry v2 access and cleanup](/configure/registry/registry_v2/managing_access_and_cleanup.mdx).Source: Learnings
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx`:
- Around line 116-117: Remove the unnecessary backslashes in the inline code
examples so the pipe characters are not escaped: change `source\|local` to
`source|local` and `Legacy\|PreserveOriginal` to `Legacy|PreserveOriginal` in
the table row strings (look for the inline code snippets containing
`--reference-policy` and `--import-mode` in the file) so MDX renders the code
literals correctly without literal backslashes.
---
Nitpick comments:
In `@docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx`:
- Around line 309-311: The relative MDX link
"../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx" should
be replaced with the project-preferred absolute MDX path
"/configure/registry/registry_v2/managing_access_and_cleanup.mdx"; update the
link in the "Administrative Operations" section (the line containing the
relative link) to use the absolute path string so the document points directly
to the target without "../" traversal.
- Line 41: The relative MDX link
"../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx" in the
sentence "Administrative usage reporting, cleanup, and trust verification are
documented in [Managing Registry v2 access and cleanup](...)" should be replaced
with the absolute path
"/configure/registry/registry_v2/managing_access_and_cleanup.mdx"; update the
link target in that link occurrence so it becomes [Managing Registry v2 access
and cleanup](/configure/registry/registry_v2/managing_access_and_cleanup.mdx).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: e798a3e6-d678-4644-b2b6-cd557ecac90f
📒 Files selected for processing (12)
docs/en/configure/registry/overview.mdxdocs/en/configure/registry/registry_v2/exposing_the_registry.mdxdocs/en/configure/registry/registry_v2/image_registry_operator.mdxdocs/en/configure/registry/registry_v2/index.mdxdocs/en/configure/registry/registry_v2/managing_access_and_cleanup.mdxdocs/en/configure/registry/registry_v2/migrating_from_legacy_registry.mdxdocs/en/configure/registry/registry_v2/registry_overview.mdxdocs/en/configure/registry/registry_v2/setting_up_and_configuring_the_registry.mdxdocs/en/developer/registry/index.mdxdocs/en/developer/registry/registry_v2/accessing_the_registry.mdxdocs/en/developer/registry/registry_v2/index.mdxdocs/en/developer/registry/registry_v2/managing_images_with_ac.mdx
💤 Files with no reviewable changes (2)
- docs/en/configure/registry/registry_v2/image_registry_operator.mdx
- docs/en/configure/registry/registry_v2/exposing_the_registry.mdx
✅ Files skipped from review due to trivial changes (9)
- docs/en/configure/registry/overview.mdx
- docs/en/configure/registry/registry_v2/index.mdx
- docs/en/developer/registry/index.mdx
- docs/en/configure/registry/registry_v2/registry_overview.mdx
- docs/en/developer/registry/registry_v2/index.mdx
- docs/en/configure/registry/registry_v2/setting_up_and_configuring_the_registry.mdx
- docs/en/configure/registry/registry_v2/migrating_from_legacy_registry.mdx
- docs/en/configure/registry/registry_v2/managing_access_and_cleanup.mdx
- docs/en/developer/registry/registry_v2/accessing_the_registry.mdx
There was a problem hiding this comment.
🧹 Nitpick comments (3)
docs/en/configure/registry/registry_v2/image_registry_operator.mdx (2)
71-73: ⚡ Quick winDocument why privileged pod-security is required.
Setting pod-security labels to
privilegedwithout explanation may lead users to copy this configuration without understanding the security implications. Document why theimage-registry-systemnamespace requires privileged access (e.g., for thenode-caDaemonSet that modifies node trust configuration, or for registry storage access).🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/configure/registry/registry_v2/image_registry_operator.mdx` around lines 71 - 73, Add a short explanatory paragraph after the pod-security label block that justifies why the image-registry-system namespace requires pod-security.kubernetes.io/audit/enforce/warn=privileged, mention the specific components that need it (e.g., the node-ca DaemonSet which modifies node trust configuration and registry pods that require low-level storage/node access), call out the security implications of using privileged pods, and provide mitigation options or alternatives (tighten PodSecurityPolicy/PSP equivalents, use RBAC, restrict to specific ServiceAccounts, or explain why hostPath/device access is necessary) so readers understand necessity and risks.
205-207: 💤 Low valueClarify whether the service account name is an example.
The command references
system:serviceaccount:cpaas-system:prometheus-sa. Clarify whether this is the actual service account name for the monitoring system, or if it's a placeholder example that users should replace with their own monitoring service account.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/configure/registry/registry_v2/image_registry_operator.mdx` around lines 205 - 207, The cited kubectl command uses the service account identifier system:serviceaccount:cpaas-system:prometheus-sa but it's unclear if that's a real account or an example; update the text around the command (the line containing "kubectl auth can-i ... --as=system:serviceaccount:cpaas-system:prometheus-sa") to explicitly state that this is an example placeholder and instruct users to replace it with their monitoring service account (or show an explicit placeholder form like system:serviceaccount:<namespace>:<service-account-name>), so readers know to substitute their own values.docs/en/developer/registry/registry_v2/accessing_the_registry.mdx (1)
30-30: 💤 Low valueConsider using an absolute MDX link for clarity.
The relative link
../../../configure/...requires three parent-directory traversals. Based on learnings, absolute MDX links are preferred in this repository when relative paths become complex.♻️ Proposed refactor
-For role binding examples, see [Managing Registry v2 access and cleanup](../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx). +For role binding examples, see [Managing Registry v2 access and cleanup](/configure/registry/registry_v2/managing_access_and_cleanup.mdx).🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/developer/registry/registry_v2/accessing_the_registry.mdx` at line 30, Replace the relative MDX link "../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx" with an absolute MDX link to the same target (e.g. "/configure/registry/registry_v2/managing_access_and_cleanup.mdx") in the line that reads "For role binding examples, see [Managing Registry v2 access and cleanup](../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx)"; keep the link text identical and only change the URL to the absolute path so the reference is clear and avoids deep parent-directory traversal.Source: Learnings
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@docs/en/configure/registry/registry_v2/image_registry_operator.mdx`:
- Around line 71-73: Add a short explanatory paragraph after the pod-security
label block that justifies why the image-registry-system namespace requires
pod-security.kubernetes.io/audit/enforce/warn=privileged, mention the specific
components that need it (e.g., the node-ca DaemonSet which modifies node trust
configuration and registry pods that require low-level storage/node access),
call out the security implications of using privileged pods, and provide
mitigation options or alternatives (tighten PodSecurityPolicy/PSP equivalents,
use RBAC, restrict to specific ServiceAccounts, or explain why hostPath/device
access is necessary) so readers understand necessity and risks.
- Around line 205-207: The cited kubectl command uses the service account
identifier system:serviceaccount:cpaas-system:prometheus-sa but it's unclear if
that's a real account or an example; update the text around the command (the
line containing "kubectl auth can-i ...
--as=system:serviceaccount:cpaas-system:prometheus-sa") to explicitly state that
this is an example placeholder and instruct users to replace it with their
monitoring service account (or show an explicit placeholder form like
system:serviceaccount:<namespace>:<service-account-name>), so readers know to
substitute their own values.
In `@docs/en/developer/registry/registry_v2/accessing_the_registry.mdx`:
- Line 30: Replace the relative MDX link
"../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx" with
an absolute MDX link to the same target (e.g.
"/configure/registry/registry_v2/managing_access_and_cleanup.mdx") in the line
that reads "For role binding examples, see [Managing Registry v2 access and
cleanup](../../../configure/registry/registry_v2/managing_access_and_cleanup.mdx)";
keep the link text identical and only change the URL to the absolute path so the
reference is clear and avoids deep parent-directory traversal.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f5b46a7d-fc19-495b-8911-ee820f704868
📒 Files selected for processing (8)
docs/en/configure/registry/registry_v2/exposing_the_registry.mdxdocs/en/configure/registry/registry_v2/image_registry_operator.mdxdocs/en/configure/registry/registry_v2/managing_access_and_cleanup.mdxdocs/en/configure/registry/registry_v2/migrating_from_legacy_registry.mdxdocs/en/configure/registry/registry_v2/setting_up_and_configuring_the_registry.mdxdocs/en/configure/registry/upgrade/registry_plugin_upgrade_guide.mdxdocs/en/developer/registry/registry_v2/accessing_the_registry.mdxdocs/en/developer/registry/registry_v2/managing_images_with_ac.mdx
💤 Files with no reviewable changes (1)
- docs/en/developer/registry/registry_v2/managing_images_with_ac.mdx
✅ Files skipped from review due to trivial changes (3)
- docs/en/configure/registry/upgrade/registry_plugin_upgrade_guide.mdx
- docs/en/configure/registry/registry_v2/setting_up_and_configuring_the_registry.mdx
- docs/en/configure/registry/registry_v2/exposing_the_registry.mdx
Summary by CodeRabbit
accommand) and administrator tasks (operator installation, configuration, exposure, access management, and cleanup).