parent
b896cc96a3
commit
e33edde984
@ -0,0 +1,66 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
name: ruoyi-auth
|
||||||
|
namespace: ruoyi #一定要写名称空间
|
||||||
|
spec:
|
||||||
|
progressDeadlineSeconds: 600
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
strategy:
|
||||||
|
rollingUpdate:
|
||||||
|
maxSurge: 50%
|
||||||
|
maxUnavailable: 50%
|
||||||
|
type: RollingUpdate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
spec:
|
||||||
|
imagePullSecrets:
|
||||||
|
- name: harbor-docker-hub #提前在项目下配置访问阿里云的账号密码
|
||||||
|
containers:
|
||||||
|
- image: $REGISTRY/$HARBOR_NAMESPACE/ruoyi-auth:SNAPSHOT-$BUILD_NUMBER
|
||||||
|
# readinessProbe:
|
||||||
|
# httpGet:
|
||||||
|
# path: /actuator/health
|
||||||
|
# port: 8080
|
||||||
|
# timeoutSeconds: 10
|
||||||
|
# failureThreshold: 30
|
||||||
|
# periodSeconds: 5
|
||||||
|
imagePullPolicy: Always
|
||||||
|
name: app
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 300m
|
||||||
|
memory: 600Mi
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
name: ruoyi-auth
|
||||||
|
namespace: ruoyi
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 8080
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8080
|
||||||
|
selector:
|
||||||
|
app: ruoyi-auth
|
||||||
|
sessionAffinity: None
|
||||||
|
type: ClusterIP
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-auth镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-auth/target'
|
||||||
|
sh 'docker build -t ruoyi-auth:latest -f ruoyi-auth/Dockerfile ./ruoyi-auth/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-auth镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-auth:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-auth:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-auth:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-auth到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-auth/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-file镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-modules/ruoyi-file/target'
|
||||||
|
sh 'docker build -t ruoyi-file:latest -f ruoyi-modules/ruoyi-file/Dockerfile ./ruoyi-modules/ruoyi-file/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-file镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-file:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-file:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-file:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-file到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-modules/ruoyi-file/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-gateway镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-gateway/target'
|
||||||
|
sh 'docker build -t ruoyi-gateway:latest -f ruoyi-gateway/Dockerfile ./ruoyi-gateway/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-gateway镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-gateway:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gateway:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gateway:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-gateway到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-gateway/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-gen镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-modules/ruoyi-gen/target'
|
||||||
|
sh 'docker build -t ruoyi-gen:latest -f ruoyi-modules/ruoyi-gen/Dockerfile ./ruoyi-modules/ruoyi-gen/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-gen镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-gen:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gen:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gen:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-gen到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-modules/ruoyi-gen/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-job镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-modules/ruoyi-job/target'
|
||||||
|
sh 'docker build -t ruoyi-job:latest -f ruoyi-modules/ruoyi-job/Dockerfile ./ruoyi-modules/ruoyi-job/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-job镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-job:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-job:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-job:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-job到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-modules/ruoyi-job/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-monitor镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-visual/ruoyi-monitor/target'
|
||||||
|
sh 'docker build -t ruoyi-monitor:latest -f ruoyi-visual/ruoyi-monitor/Dockerfile ./ruoyi-visual/ruoyi-monitor/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-monitor镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-monitor:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-monitor:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-monitor:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-monitor到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-visual/ruoyi-monitor/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-system镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-modules/ruoyi-system/target'
|
||||||
|
sh 'docker build -t ruoyi-system:latest -f ruoyi-modules/ruoyi-system/Dockerfile ./ruoyi-modules/ruoyi-system/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-system镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-system:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-system:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-system:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-system到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-modules/ruoyi-system/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,81 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'nodejs'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
sh '''cd ruoyi-ui/
|
||||||
|
npm install --registry=https://registry.npmmirror.com'''
|
||||||
|
sh '''cd ruoyi-ui/
|
||||||
|
npm run build:prod
|
||||||
|
ls -al'''
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
sh 'ls'
|
||||||
|
sh 'docker build -t ruoyi-ui:latest -f ruoyi-ui/nginx/Dockerfile ./ruoyi-ui/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-ui:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-ui:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-ui:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'ruoyi-ui/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-auth镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-auth/target'
|
||||||
|
sh 'docker build -t ruoyi-auth:latest -f Devops/ruoyi-auth/Dockerfile ./ruoyi-auth/target/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-auth镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-auth:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-auth:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-auth:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-auth到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'Devops/ruoyi-auth/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '10.206.16.14:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
name: ruoyi-auth
|
||||||
|
namespace: ruoyi #一定要写名称空间
|
||||||
|
spec:
|
||||||
|
progressDeadlineSeconds: 600
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
strategy:
|
||||||
|
rollingUpdate:
|
||||||
|
maxSurge: 50%
|
||||||
|
maxUnavailable: 50%
|
||||||
|
type: RollingUpdate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
spec:
|
||||||
|
imagePullSecrets:
|
||||||
|
- name: harbor-docker-hub #提前在项目下配置访问阿里云的账号密码
|
||||||
|
containers:
|
||||||
|
- image: $REGISTRY/$HARBOR_NAMESPACE/ruoyi-auth:SNAPSHOT-$BUILD_NUMBER
|
||||||
|
# readinessProbe:
|
||||||
|
# httpGet:
|
||||||
|
# path: /actuator/health
|
||||||
|
# port: 8080
|
||||||
|
# timeoutSeconds: 10
|
||||||
|
# failureThreshold: 30
|
||||||
|
# periodSeconds: 5
|
||||||
|
imagePullPolicy: Always
|
||||||
|
name: app
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 300m
|
||||||
|
memory: 600Mi
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-auth
|
||||||
|
name: ruoyi-auth
|
||||||
|
namespace: ruoyi
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 8080
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8080
|
||||||
|
selector:
|
||||||
|
app: ruoyi-auth
|
||||||
|
sessionAffinity: None
|
||||||
|
type: ClusterIP
|
@ -0,0 +1,13 @@
|
|||||||
|
FROM openjdk:8-jdk
|
||||||
|
LABEL maintainer=huhongtao
|
||||||
|
|
||||||
|
|
||||||
|
#docker run -e PARAMS="--server.port 9090"
|
||||||
|
ENV PARAMS="--server.port=8080 --spring.profiles.active=prod --spring.cloud.nacos.discovery.server-addr=ruoyi-nacos.ruoyi:8848 --spring.cloud.nacos.config.server-addr=ruoyi-nacos.ruoyi:8848 --spring.cloud.nacos.config.namespace=prod --spring.cloud.nacos.config.file-extension=yml"
|
||||||
|
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
|
||||||
|
|
||||||
|
COPY *.jar /app.jar
|
||||||
|
EXPOSE 8080
|
||||||
|
|
||||||
|
#
|
||||||
|
ENTRYPOINT ["/bin/sh","-c","java -Dfile.encoding=utf8 -Djava.security.egd=file:/dev/./urandom -jar app.jar ${PARAMS}"]
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-gateway镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-gateway/target'
|
||||||
|
sh 'docker build -t ruoyi-gateway:latest -f Devops/ruoyi-gateway/Dockerfile ./ruoyi-gateway/target'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-gateway镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-gateway:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gateway:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gateway:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-gateway到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'Devops/ruoyi-gateway/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,66 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-gateway
|
||||||
|
name: ruoyi-gateway
|
||||||
|
namespace: ruoyi #一定要写名称空间
|
||||||
|
spec:
|
||||||
|
progressDeadlineSeconds: 600
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: ruoyi-gateway
|
||||||
|
strategy:
|
||||||
|
rollingUpdate:
|
||||||
|
maxSurge: 50%
|
||||||
|
maxUnavailable: 50%
|
||||||
|
type: RollingUpdate
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-gateway
|
||||||
|
spec:
|
||||||
|
imagePullSecrets:
|
||||||
|
- name: harbor-docker-hub #提前在项目下配置访问阿里云的账号密码
|
||||||
|
containers:
|
||||||
|
- image: $REGISTRY/$HARBOR_NAMESPACE/ruoyi-gateway:SNAPSHOT-$BUILD_NUMBER #SNAPSHOT-$BUILD_NUMBER
|
||||||
|
# readinessProbe:
|
||||||
|
# httpGet:
|
||||||
|
# path: /actuator/health
|
||||||
|
# port: 8080
|
||||||
|
# timeoutSeconds: 10
|
||||||
|
# failureThreshold: 30
|
||||||
|
# periodSeconds: 5
|
||||||
|
imagePullPolicy: Always
|
||||||
|
name: app
|
||||||
|
ports:
|
||||||
|
- containerPort: 8080
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 300m
|
||||||
|
memory: 600Mi
|
||||||
|
terminationMessagePath: /dev/termination-log
|
||||||
|
terminationMessagePolicy: File
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: ruoyi-gateway
|
||||||
|
name: ruoyi-gateway
|
||||||
|
namespace: ruoyi
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: http
|
||||||
|
port: 8080
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8080
|
||||||
|
selector:
|
||||||
|
app: ruoyi-gateway
|
||||||
|
sessionAffinity: None
|
||||||
|
type: ClusterIP
|
@ -0,0 +1,13 @@
|
|||||||
|
FROM openjdk:8-jdk
|
||||||
|
LABEL maintainer=huhongtao
|
||||||
|
|
||||||
|
|
||||||
|
#docker run -e PARAMS="--server.port 9090"
|
||||||
|
ENV PARAMS="--server.port=8080 --spring.profiles.active=prod --spring.cloud.nacos.discovery.server-addr=ruoyi-nacos.ruoyi:8848 --spring.cloud.nacos.config.server-addr=ruoyi-nacos.ruoyi:8848 --spring.cloud.nacos.config.namespace=prod --spring.cloud.nacos.config.file-extension=yml"
|
||||||
|
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
|
||||||
|
|
||||||
|
COPY *.jar /app.jar
|
||||||
|
EXPOSE 8080
|
||||||
|
|
||||||
|
#
|
||||||
|
ENTRYPOINT ["/bin/sh","-c","java -Dfile.encoding=utf8 -Djava.security.egd=file:/dev/./urandom -jar app.jar ${PARAMS}"]
|
@ -0,0 +1,78 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'maven'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls -al'
|
||||||
|
sh 'mvn clean package -Dmaven.test.skip=true'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建ruoyi-file镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
sh 'ls ruoyi-modules/ruoyi-file/target'
|
||||||
|
sh 'docker build -t ruoyi-file:latest -f Devops/ruoyi-modules/ruoyi-file/Dockerfile ./ruoyi-modules/ruoyi-file/target'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送ruoyi-file镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('maven') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-file:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-file:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-file:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署ruoyi-file到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'Devops/ruoyi-modules/ruoyi-file/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '192.168.2.147:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,15 @@
|
|||||||
|
# 基础镜像
|
||||||
|
FROM nginx
|
||||||
|
# author
|
||||||
|
MAINTAINER huhongtao
|
||||||
|
|
||||||
|
# 挂载目录
|
||||||
|
VOLUME /home/ruoyi/projects/ruoyi-ui
|
||||||
|
# 创建目录
|
||||||
|
RUN mkdir -p /home/ruoyi/projects/ruoyi-ui
|
||||||
|
# 指定路径
|
||||||
|
WORKDIR /home/ruoyi/projects/ruoyi-ui
|
||||||
|
# 复制conf文件到路径
|
||||||
|
COPY ./nginx/conf/nginx.conf /etc/nginx/nginx.conf
|
||||||
|
# 复制html文件到路径
|
||||||
|
COPY ./dist /home/ruoyi/projects/ruoyi-ui
|
@ -0,0 +1,81 @@
|
|||||||
|
pipeline {
|
||||||
|
agent {
|
||||||
|
node {
|
||||||
|
label 'nodejs'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
stages {
|
||||||
|
stage('拉取代码') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
git(url: 'https://gitee.com/hongtaohu/RuoYi-Cloud.git', credentialsId: 'gitee-id', branch: 'master', changelog: true, poll: false)
|
||||||
|
sh 'ls -al'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('项目编译') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
sh '''cd ruoyi-ui/
|
||||||
|
npm install --registry=https://registry.npmmirror.com'''
|
||||||
|
sh '''cd ruoyi-ui/
|
||||||
|
npm run build:prod
|
||||||
|
ls -al'''
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('构建镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
sh 'ls'
|
||||||
|
sh 'docker build -t ruoyi-ui:latest -f Devops/ruoyi-ui/Dockerfile ./ruoyi-ui/'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('推送镜像') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
container('nodejs') {
|
||||||
|
withCredentials([usernamePassword(credentialsId : 'harbor-registry' ,passwordVariable : 'HARBOR_PWD_TEXT' ,usernameVariable : 'HARBOR_USER_TEXT' ,)]) {
|
||||||
|
sh 'echo "$HARBOR_PWD_TEXT" | docker login $REGISTRY -u "$HARBOR_USER_TEXT" --password-stdin'
|
||||||
|
sh 'docker tag ruoyi-ui:latest $REGISTRY/$HARBOR_NAMESPACE/ruoyi-ui:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
sh 'docker push $REGISTRY/$HARBOR_NAMESPACE/ruoyi-ui:SNAPSHOT-$BUILD_NUMBER'
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stage('部署到dev环境') {
|
||||||
|
agent none
|
||||||
|
steps {
|
||||||
|
kubernetesDeploy(configs: 'Devops/ruoyi-ui/deploy/**', enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
DOCKER_CREDENTIAL_ID = 'dockerhub-id'
|
||||||
|
GITHUB_CREDENTIAL_ID = 'github-id'
|
||||||
|
KUBECONFIG_CREDENTIAL_ID = 'demo-kubeconfig'
|
||||||
|
REGISTRY = '10.206.16.14:30002'
|
||||||
|
DOCKERHUB_NAMESPACE = 'docker_username'
|
||||||
|
GITHUB_ACCOUNT = 'kubesphere'
|
||||||
|
APP_NAME = 'devops-java-sample'
|
||||||
|
HARBOR_NAMESPACE = 'ruoyi'
|
||||||
|
}
|
||||||
|
parameters {
|
||||||
|
string(name: 'TAG_NAME', defaultValue: '', description: '')
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue