如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Jenkinsfile Runner将Jenkins流水线执行引擎打包为命令行工具或Docker镜像,旨在提供灵活的Jenkins流水线执行方式,无需完整的Jenkins服务器环境。
run(执行流水线)、lint(验证Declarative Pipeline语法)、cli(Jenkins交互命令行)等命令plugins.txt文件自定义插件集准备工作
JENKINS_HOME/plugins目录获取插件基本执行
假设Git仓库位于~/foo,包含Jenkinsfile和源代码,执行命令:
bashjenkinsfile-runner -w <war文件路径> -p <插件目录> -f <Jenkinsfile路径>
示例Jenkinsfile:
groovypipeline { agent any stages { stage('Print hello') { steps { echo 'Hello world!' } } } }
执行输出:
$ ./app/target/appassembler/bin/jenkinsfile-runner -w /tmp/jenkins -p /tmp/jenkins_home/plugins -f ~/foo/ Started Resume disabled by user, switching to high-performance, low-durability mode. [Pipeline] node [Pipeline] { [Pipeline] stage [Pipeline] { (Print hello) [Pipeline] echo Hello world! [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // node [Pipeline] End of Pipeline Finished: SUCCESS
命令行接口(CLI)
支持以下命令:
run:执行Jenkinsfile(默认命令)lint:验证Declarative Pipeline语法(不执行)cli:启动交互式Jenkins CLI,支持list-plugins、groovy等命令generate-completion:生成bash/zsh自动补全脚本version:显示版本信息help:显示命令帮助通用参数
-w (--jenkins-war) FILE:Jenkins WAR文件或解压目录路径-jv (--jenkins-version) VAL:Jenkins版本(未指定WAR时使用,默认最新LTS)-p (--plugins) FILE:插件目录或plugins.txt文件路径(默认plugins.txt)--jenkinsHome FILE:指定Jenkins Home目录(默认临时目录)--httpPort:Web服务器端口(默认禁用)--agentPort:代理连接端口(默认禁用)执行命令(run)参数
-f (--file) FILE:Jenkinsfile路径或包含Jenkinsfile的目录(默认./Jenkinsfile)-a (--arg):传递给流水线的参数(key=value格式,可多次使用)--runWorkspace FILE:指定工作空间路径-ns (--no-sandbox):禁用沙箱环境和脚本安全检查(谨慎使用)-n (--job-name) VAL:任务名称(默认'job')-b (--build-number) N:构建编号(默认1)-c (--cause) VAL:构建原因描述传递参数示例:
bashjenkinsfile-runner -w /tmp/jenkins -p /tmp/plugins -f ~/foo/ -a "param1=Hello" -a "param2=value2"
镜像类型
jenkins/jenkinsfile-runnerjenkins4eval/jenkinsfile-runner(实验性)基本运行
bashdocker run --rm -v $(pwd)/Jenkinsfile:/workspace/Jenkinsfile docker.xuanyuan.run/jenkins/jenkinsfile-runner
高级配置
JVM参数:通过JAVA_OPTS环境变量设置
bashdocker run --rm -e JAVA_OPTS="-Xms256m -Xmx512m" -v $PWD:/workspace docker.xuanyuan.run/jenkins/jenkinsfile-runner
持久化Jenkins Home:
bashdocker run --rm -v $(pwd)/Jenkinsfile:/workspace/Jenkinsfile -v /local/jenkinsHome:/jenkinsHome docker.xuanyuan.run/jenkins/jenkinsfile-runner --runHome /jenkinsHome
交互式CLI:
bashdocker run --rm -it -v $PWD:/workspace -e FORCE_JENKINS_CLI=true docker.xuanyuan.run/jenkins/jenkinsfile-runner --cli
自定义命令:
bashdocker run --rm -it -v $PWD:/workspace --entrypoint bash docker.xuanyuan.run/jenkins/jenkinsfile-runner /app/bin/jenkinsfile-runner -w /tmp/jenkins -p /usr/share/jenkins/ref/plugins -f /workspace
可通过以下方式扩展:
--plugins参数指定自定义插件目录或plugins.txt您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务