
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!https://raw.githubusercontent.com/matejak/argbash/master/resources/logo/argbash-docker.png
Argbash是一个Bash参数解析代码生成器,而非解析库。它允许你描述脚本需要接收的参数,然后生成对应的Bash解析代码。生成的代码可嵌入脚本或单独文件,且运行脚本时无需依赖Argbash本身。本Docker镜像提供了容器化的Argbash,无需在本地安装即可使用,同时包含argbash-init工具用于生成初始脚本模板。
argbash-init工具,可快速生成脚本初始模板适用于开发需要处理命令行参数的Bash脚本时,希望简化参数解析逻辑编写的场景。尤其适合:
通过Docker运行Argbash,无需本地安装。建议创建单行Shell脚本封装Docker命令,实现与原生argbash/argbash-init相同的使用体验。
不同系统的脚本示例
| 操作系统 | 脚本内容 |
|---|---|
| Posix(如Linux、macOS) | docker run --rm -e PROGRAM=argbash -v "$(pwd):/work" -u "$(id -u):$(id -g)" matejak/argbash "$@" |
| Windows | docker run --rm -e PROGRAM=argbash -v "%CD%:/work" matejak/argbash %* |
-e PROGRAM=argbash:指定运行的工具,默认为argbash,可改为argbash-init使用初始化工具-v "$(pwd):/work"(Posix)或-v "%CD%:/work"(Windows):将当前目录挂载到容器的/work工作目录,实现文件交互-u "$(id -u):$(id -g)"(Posix):以宿主用户身份运行容器,避免文件权限问题"$@"(Posix)或%*(Windows):将脚本接收的参数传递给容器内的Argbash注意:由于挂载宿主目录,可能会遇到SELinux等安全机制导致的权限问题。
创建封装脚本、生成模板、编辑参数定义、生成最终脚本:
shell# 创建argbash和argbash-init的Docker封装脚本 printf '%s\n' '#!/usr/bin/env bash' 'docker run --rm -v "$(pwd):/work" -u "$(id -u):$(id -g)" matejak/argbash "$@"' > argbash-docker printf '%s\n' '#!/usr/bin/env bash' 'docker run --rm -e PROGRAM=argbash-init -v "$(pwd):/work" -u "$(id -u):$(id -g)" matejak/argbash "$@"' > argbash-init-docker # 添加执行权限 chmod a+x argbash-docker argbash-init-docker # 使用argbash-init生成初始模板(含一个位置参数和一个可选参数) ./argbash-init-docker --pos positional-arg --opt optional-arg minimal.m4 # 编辑模板文件,定义参数细节(如帮助信息、默认值等) vim minimal.m4 # 生成最终脚本 ./argbash-docker minimal.m4 -o my-script.sh # 测试生成的脚本(查看帮助信息) ./my-script.sh -h
--privileged或调整SELinux策略)-u参数,直接使用%CD%挂载当前目录Argbash Docker镜像由https://github.com/Tzrlk%E8%B4%A1%E7%8C%AE%E3%80%82%E5%B0%86%60argbash-init%60%E7%BA%B3%E5%85%A5%E5%AE%B9%E5%99%A8%E7%9A%84%E6%83%B3%E6%B3%95%E6%9D%A5%E8%87%AA%E7%94%A8%E6%88%B7https://hub.docker.com/u/gnosthi/%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务