新建流水线paas
编写脚本
node {
stage(‘git-clone-paas’) { // for display purposes
sshPublisher(publishers: [sshPublisherDesc(configName: ‘k8smaster’, transfers: [sshTransfer(cleanRemote: false, excludes: ‘’, execCommand: ‘’‘cd /usr/local/paas
git pull’‘’, execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: ‘[, ]+’, remoteDirectory: ‘’, remoteDirectorySDF: false, removePrefix: ‘’, sourceFiles: ‘’)], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
}
stage(‘k8s-deploy’) {
sshPublisher(publishers: [sshPublisherDesc(configName: ‘k8smaster’, transfers: [sshTransfer(cleanRemote: false, excludes: ‘’, execCommand: ‘’‘cd /usr/local/paas/dev
kubectl apply -f ./${projectName}.yml’‘’, execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: ‘[, ]+’, remoteDirectory: ‘’, remoteDirectorySDF: false, removePrefix: ‘’, sourceFiles: ‘’)], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
}
}
web-demo.yml
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/e72b599f482fd8b1a8d6c3d28688d6e4.png)
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: dev
name: web-demo
labels:
app: web-demo
spec:
replicas: 2
selector:
matchLabels:
app: web-demo
template:
metadata:
labels:
app: web-demo
spec:
containers:
- name: web-demo
image: 39.108.107.51:80/web-demo/web-demo:0.0.1-SNAPSHOT
imagePullPolicy: Always
ports:
- containerPort: 8080
apiVersion: v1
kind: Service
metadata:
namespace: dev
name: web-demo
labels:
app: web-demo
spec:
selector:
app: web-demo
ports:
- port: 8081
targetPort: 8080
type: NodePort
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
namespace: dev
name: web-demo
spec:
ingressClassName: ingress
rules:
- host: wen.com.cn
http:
paths:- path: /
pathType: Prefix
backend:
service:
name: nginx-deployment
port:
number: 8081
- path: /