前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jenkins常见问题问答录(一)

Jenkins常见问题问答录(一)

作者头像
DevOps持续交付
发布2024-05-18 08:18:23
1130
发布2024-05-18 08:18:23
举报
文章被收录于专栏:DevOps持续交付DevOps持续交付

问题1:Jenkins和Docker怎么结合?

参考:Jenkins和Docker结合可以将容器作为Jenkins的slave节点,有很多优点。比如实现执行环境的统一,slave的自动创建和销毁,免去了人工维护环境的成本等。

问题2:写pipeline时,两个stage,第一个随机指定一台机器运行,第二个需要跟第一个在同一台机器上,有什么办法来做吗?

参考:设置全局agent,每个stage不单独指定agent即可。

问题3:项目在Windows和Linux上各编译一部分,然后把Windows上的产物合并到Linux上,如何处理?

参考:可以考虑编译机器固定,或者产物都放到一个固定存放机器,再拿回来。

问题4:Pipeline和Jenkins传统类型的任务比有什么优点?

参考:Pipeline一个是单个任务可以多节点,另外代码可以复用,比图形界面点击有效率。配置变成代码了,就可以进行版本化控制,便于管理。

问题5:启动Pipeline的时候,希望能够只检出Jenkinsfile文件。

参考:如果说有这种特殊需求,建议把Jenkinsfile单独放到一个git库里管理,不和应用源码放一起。

问题6:Blue Ocean和Jenkins是什么关系?

参考:通俗理解,Blue Ocean可以看作是Jenkins推出的新的UI界面,有更现代的外观和更好的交互。

当然最重要的还是对Jenkins 2.x推出的新的流水线任务类型的支持,可以清晰展示整个流水线(Pipeline)各个阶段(stage)的串并行关系和状态。

Blue Ocean是以插件的形式实现的,只要在Jenkins插件中心安装“Blue Ocean”插件即可。安装之后在经典UI界面,点击左侧的“打开 Blue Ocean”来访问新界面。

问题7:在共享库里面写的stage,能不能显示在Blue Ocean的界面上?

参考:可以。

问题8:怎么看Jenkins上的Groovy版本?比如我登录服务器,可以执行groovy --version来看服务器安装的Groovy版本。

参考:可以在${JENKINS_HOME}/war/WEB-INF/lib目录下面找到groovy对应的jar包。jar包名称上可以看到版本号。

问题9:Jenkins pipeline在一个stage里面执行bat指令,里面set一个变量,有办法在下一个stage的bat指令里获取这个变量的吗?通过groovy插值可以在bat里面获取groovy定义的变量,但能保存bat里面的变量到groovy吗?

参考:set定义的变量,本次bat命令结束生命周期就结束了,无法在下一个stage的bat命令里获取。就算是同一个stage,分开写2个bat命令,后一句也不能获取到前一句定义的变量值。这种情况,建议先将需要的信息写入到文件,再从文件中读取。如果两个stage在不同的节点上执行,中间再加一步归档文件的操作即可。

问题10:有没有python的库可以操作jenkins?

参考:有两个。一个叫python-jenkins,一个叫jenkinsapi。前者老一点,后者新一些。可以根据自己的爱好和功能需求选择合适的。还有一个jenkinsclient是整合了上述两个库开发的Jenkins命令行客户端,可以通过命令行方式操作Jenkins服务器,功能强大,支持多实例。

代码语言:javascript
复制
https://pypi.org/project/python-jenkins/
https://pypi.org/project/jenkinsapi/
https://pypi.org/project/jenkinsclient
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DevOps持续交付 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档