jenkins pipeline介绍与使用
jenkins pipeline介绍与使用
1. jenkins pipeline介绍与使用
- Jenkins Pipeline是一套插件,支持在Jenkins中实现集成和持续交付管道;
- Pipeline通过特定语法对简单到复杂的传输管道进行建模;
- 声明式:遵循与Groovy相同语法。pipeline
- 脚本式:支持Groovy大部分功能,也是非常表达和灵活的工具。node
- Jenkins Pipeline的定义被写入一个文本文件,称为Jenkinsfile。
2. jenkins流水线结构图
3 创建一个k8s-java-demo
- 创建一个k8s-java-demo的流水线
4. pipeline格式演变
-
pipeline测试脚本
node { stage('拉取代码') { echo '拉取代码' } stage('编译打包') { echo '编译打包' } stage('部署发布') { echo '部署发布' } }
5. 配置服务器和git免密钥
5.1 查看服务器公钥
[root@k8s-master git]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDFK38lDAHlksFXwo9b4wQstVvBF7bZCBgbr2nfZTMgfW4nCEzcd7mf15iTGfVkcrRreJHYL4ajzdVZ4qIk/4e1QvPhqDbr5av4tBqTfwOKkim3evpe7dslEb/MF1VUcrNUTMNOMILos7UrOSxYmgRMO1Kvpis0PiDIWQ4TzQM3mn+dGFCO9cC3nBzOwJg7mH91sGcZyf4uZJp30JmdP0NEDqDrrU9odZz/SxLkSbVcKPLfpIHGvkSvouwzzyLE3iQhGD6RoOiQu4AxGE30cOG/MzwGMbSPxe/RpGT/R3DW5ppyojrfgGyeYQupgyy7ZTWtyzdfYQZsCOv0GZsPqgKh root@k8s-master
5.2 把公钥key拷贝到gitlab
-
登陆gitlab服务
-
点击头像,进入setting
-
配置ssh Keys
-
复制上面的key公钥
6. 演示示例
-
配置项目
-
配置pipeline
node { stage('拉取代码') { echo '拉取代码' } stage('编译打包') { echo '编译打包' } stage('部署发布') { echo '部署发布' } }
-
在拉取代码选项,配置git拉取代码
填写git仓库
到gitlab找到我们需要拉取的git仓库
本次使用的ssh key方式获取key
git@10.100.24.87:k8s/tomcat_java_demo.git
把git地址复制到jenkins
发现不能连接
这里我们需要配置凭据
选择ssh key,配置密钥
我们发现需要公钥key
[root@k8s-master git]# cat /root/.ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAxSt/JQwB5ZLBV8KPW+MELLVbwRe22QgYG69p32UzIH1uJwhM
3He5n9eYkxn1ZHK0a3iR2C+Go83VWeKiJP+HtULz4ag26+Wr+LQak38DipIpt3r6
Xu3bJRG/zBdVVHKzVEzDTjCC6LO1KzksWJoETDtSr6YrND4gyFkOE80DN5p/nRhQ
jvXAt5wczsCYO5h/dbBnGcn+LmSad9CZnT9DRA6g661PaHWc/0sS5Em1XCjy36SB
xr5Er6LsM88ixN4kIRg+kaDokLuAMRhN9HDhvzM8BjG0j8Xv0aRk/0dw1uaacqI6
34BsnmELqYMsu2U1rcs3X2EGbAjr9BmbD6oCoQIDAQABAoIBAG3KS7FIX2IDdw+0
Mfm7jp6Kmj4KQ3HUlQANjEmt42tLDORFNe9p533/ImF/CerWCGrzp1qXFETwH8Y+
cYVimKGxV3YnIfX3XOxO9aF+D23A9+PIYdQsZGPe30r5DzXH7N2bJQHL94k2UEJy
QqRPlucP/Xn7cIFVuxF0rWcPOKRjtC8WCeSiqSKaRXHvS7SoBKbUxZDfmcOzZrPe
DKwFYL4a4RCflGDy4X+N+KKR5qeWfbZW3IVnpei9dui6VOjWpvlJRpB9gqqiFbsg
4eX7gCufENkhhvhC01NvcM+O+Q9ODfyt4Ar5Gdk9mIEVP7CVIxYiqtAF0Ni5pPRA
zsH578ECgYEA5xtDr5bOU1meh0WaY96pBro6KlgZ0P3Jcp8esTfhG5PE2I+UdjNu
WY+SWa0NP8020zwGFD+1h4AMGrGwSPZ6NiQl23qB3RN2faCtMRlQ8ikeqmLnrdp0
b0SFerMQM7FF0hIbhRark8PHHCBIkaPodAJ2+CqqI4DkC8cH8pWF29kCgYEA2mhv
P11D1S5SC3/QZFw8YeRw1wivsCFsotUTsZgNF0GJj+8ptm4LefC0Mo0agwfl7eki
SJkx5OGdQrrQfQDEuXscUvUVcK/2RxJRlbR/QyJzIN6gdTXymTipSQWYyvCrsjKF
w9f9bGC9Z9F4ucNAfE9CJDUKKbQbinlWlLI6iAkCgYB3sBoU1OBUMGS2n+h+cnFN
Z6L6DRiJsPXkY94MX+k4VAYtNebodGhg/8cGpGXpNgl/ymVHlVsZKsqaBI5Mq0HN
yljE2yRob0z9cPphJEBUudEE4yYjVrDYcz9BtXzdmKCVVAVmnsALTehPe7S5oI6h
jik5CzeEHZt9Mf2+t4tUuQKBgCT3D/0Vd+mY0WII2+hghAe9diuu2K1iutREY/Tm
2zBYc0PdIp4xudeFmboEj7wllhDSKG9JHlyyor8shyThAGq0H3Ma7+oGnhQhUZWY
2wEtz3Z8t4OfAdRU9rHZNKcEXMroKiOfZtD0/pmXpmsqVLu1XmhqYbH1PcQODU1V
bPqhAoGAS3djKQxo+b+VBuqAdSbx5bg0sZIfqq7Ouy2ADhh+2i+wT4UMHhU0wlF0
mkW44/iH1hSDEyCXrxyuTBqcLJmVUQIlU29BbZ0CpJfkhOmFC6oDFsdRBResgdq0
R6vZ25IJuwALft+XFJRrbP/BtUb2+D6j4lQ0FP2y6hSWwQMGtN4=
-----END RSA PRIVATE KEY-----
保存后,在凭据点击应用
-
生成pipeline的脚本
-
拷贝生成的流水线脚本
git credentialsId: 'f9d39981-7fdc-40ba-9a7a-e44022549503', url: 'git@10.100.24.87:k8s/tomcat_java_demo.git'
-
保存配置
执行构建看看
发现构建成功
分类:
k8s
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构