容器化部署之Jenkins分布式节点、pipeline10

一、jenkins分布式节点

1)创建节点

  • 创建远程工作目录

在这里插入图片描述
在这里插入图片描述

  • 运行节点(依赖jdk)
    在这里插入图片描述

在这里插入图片描述

2)创建项目

  • jenkins添加webhook
    选择gitee,添加webhook
# 使用ngrok映射公网地址
sudo tar -xvzf ngrok-v3-stable-linux-amd64.tgz -C /usr/local/bin
ngrok config add-authtoken 2hVzpESrnADT1PJqcdGCmYmDWmI_6LZKZXm83s6uvg6WfbgSH
ngrok http 8080

# 访问
https://356b-112-20-67-139.ngrok-free.app/generic-webhook-trigger/invoke?token=fa0apo-weqa-093d-seffe@123

在这里插入图片描述

  • 添加git源码管理
    jenkins添加gitee,ssh方式连接
    查看私钥:cat ~/.ssh/id_rsa
    在这里插入图片描述

  • 执行shell(自动构建镜像并推送)

docker build -t autotpsite:v1 .
docker tag autotpsite:v1 192.168.xxx.xxx:5001/autotpsite:v1
docker login 192.168.xxx.xxx:5001
docker push 192.168.xxx.xxx:5001/autotpsite:v1

二、pipeline流水线

pipeline的出现代表企业人员可以更自由的通过代码来实现不同的工作流程。
在这里插入图片描述
1)流水线结构
Node:节点(某台机器),执行任务的具体环境
Stage:环节,表示一组操作,通常用来逻辑划分
脚本语法:shell+groovy

容器部署jenkins:

docker run -id --name jenkins2 -p 8080:8080 -p 50000:50000 -v /var/jenkins_node:/var/jenkins_home --restart=always --privileged=true  registry.cn-hangzhou.aliyuncs.com/sqqdcl/jenkins:v5

2)流水线语法
分为声明式语法和脚本式语法,一般使用脚本式语法。
在这里插入图片描述

流水线脚本配置Jenkinsfile:

node("autotpsite"){  //指定标签是autotpsite的节点运行此任务
// 需要运行的任务,命令行
stage("停止服务"){
checkout scm  //下载同步代码文件
sh "docker-compose down"
}
stage("构建"){
//sh "docker build -t autotpsite:v2"
//测试流水线脚本
//def yml_content = readYaml file: 'docker-compose.yml'
//println(yml_content)
//sh "cd autotpsite && cat settings.py" //jenkins默认工作目录下
dir('autotpsite'){
  sh "cat settings.py"
}
}
stage("打标签"){
//sh "docker tag autotpsite:v2 192.168.xxx.xxx:5001/autotpsite:v2"
}
stage("重启服务"){
sh "docker-compose up -d"
}

jenkins添加流水线脚本
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妍婧

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值