新增拉取功能 #52
Reference in New Issue
Block a user
Delete Branch "main"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
在原有镜像搜索拉取镜像命令下方新增使用代理拉取镜像并tag回源镜像再untag代理镜像。实现效果如下

Summary by CodeRabbit
Walkthrough
A new Docker pull command variant has been added to the tag UI in
search.html, which uses the current page's host as a proxy domain prefix. This is implemented within therenderTagsBatchfunction, displaying both the original and proxy pull commands with copy buttons. No other logic or control flow is modified.Changes
src/public/search.htmlrenderTagsBatchto generate and display a proxy-prefixed Docker pull command using the page host, with UI updates for copy functionality.Estimated code review effort
🎯 2 (Simple) | ⏱️ ~7 minutes
Poem
✨ Finishing Touches
🧪 Generate unit tests
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.
❤️ Share
🪧 Tips
Chat
There are 3 ways to chat with CodeRabbit:
I pushed a fix in commit <commit_id>, please review it.Explain this complex logic.Open a follow-up GitHub issue for this discussion.@coderabbitaiin a new review comment at the desired location with your query. Examples:@coderabbitai explain this code block.@coderabbitai modularize this function.@coderabbitaiin a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.@coderabbitai read src/utils.ts and explain its main purpose.@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.@coderabbitai help me debug CodeRabbit configuration file.Support
Need help? Create a ticket on our support page for assistance with any issues or questions.
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.
CodeRabbit Commands (Invoked using PR comments)
@coderabbitai pauseto pause the reviews on a PR.@coderabbitai resumeto resume the paused reviews.@coderabbitai reviewto trigger an incremental review. This is useful when automatic reviews are disabled for the repository.@coderabbitai full reviewto do a full review from scratch and review all the files again.@coderabbitai summaryto regenerate the summary of the PR.@coderabbitai generate docstringsto generate docstrings for this PR.@coderabbitai generate sequence diagramto generate a sequence diagram of the changes in this PR.@coderabbitai generate unit teststo generate unit tests for this PR.@coderabbitai resolveresolve all the CodeRabbit review comments.@coderabbitai configurationto show the current CodeRabbit configuration for the repository.@coderabbitai helpto get help.Other keywords and placeholders
@coderabbitai ignoreanywhere in the PR description to prevent this PR from being reviewed.@coderabbitai summaryto generate the high-level summary at a specific location in the PR description.@coderabbitaianywhere in the PR title to generate the title automatically.CodeRabbit Configuration File (
.coderabbit.yaml).coderabbit.yamlfile to the root of your repository.# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.jsonDocumentation and Community
Actionable comments posted: 2
🧹 Nitpick comments (1)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📥 Commits
Reviewing files that changed from the base of the PR and between
a0df3b1a54and4317022545.📒 Files selected for processing (1)
src/public/search.html(4 hunks)🛠️ Refactor suggestion
⚠️ Potential issue
Quote & escape user-controlled values to prevent malformed shell commands / XSS.
tag.nameandfullRepoNameoriginate from an external API and are injected verbatim into the shell command & HTML.If either contains whitespace, quotes,
$, back-ticks, or HTML metacharacters the rendered command breaks and, worse, enables HTML/JS injection because the string is later embedded into an inlineonclick.📝 Committable suggestion
🤖 Prompt for AI Agents
🛠️ Refactor suggestion
Replace inline
onclickhandlers with delegated listeners to avoid attribute-level injection.Keeping large command strings inside HTML attributes:
is brittle (needs manual escaping) and violates separation-of-concerns.
Prefer a data attribute plus a delegated listener:
Then, once in your
<script>:This eliminates the need for manual escaping and blocks a common XSS vector.
🤖 Prompt for AI Agents
感谢PR,不过这个只是找镜像,没必要弄这么细,新增一个使用代理拉取镜像的命令就够了
这是我的首次提交PR,也不清楚是否有什么规则上的问题。因为新增的这个功能对我来说是很方便的,内部有一个k8s集群,有时候镜像会被删除需要手动拉取并保持原tag,因此稍微改了一下代码,希望能给其他有童谣需求的人带来方便。
命令太多页面看着太乱了
Pull request closed