linux系统jenkins在docker上的自动部署

1.在jenkins上,创建流水线项目

 2.文件配置

Jenkinsfile文件和Dockerfile文件和pom.xml在同一目录下:

Dockerfile:

FROM openjdk:8-jre-slim
WORKDIR /app
ARG JAR_FILE
#VOLUME /tmp

ADD   ${JAR_FILE}   app.jar

EXPOSE 7002

ENTRYPOINT ["java", "-jar", "app.jar"]

Jenkinsfile:

node {
    def mvnHome
    stage('拉取代码') { // for display purposes
       git credentialsId: 'e0028312', url: 'http://10.126.23.56/e0028312/wx-template.git'
    }
    stage('打包代码') {
        sshPublisher(publishers: [sshPublisherDesc(configName:'centos',
                             transfers: [sshTransfer(cleanRemote: false, excludes: '',
                             execCommand: 'sh /var/jenkins_home/workspace/wx.sh',
                             execTimeout: 120000, flatten: false, makeEmptyDirs: false,
                             noDefaultExcludes: false, patternSeparator: '[, ]+',
                             remoteDirectory: '/', remoteDirectorySDF: false, removePrefix: '', sourceFiles: '*/*')],
                             usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
        sh " mvn  clean  package dockerfile:build "
    }
    stage('运行') {
         sshPublisher(publishers: [sshPublisherDesc(configName:'centos',
                     transfers: [sshTransfer(cleanRemote: false, excludes: '',
                     execCommand: 'sh /var/jenkins_home/workspace/run.sh',
                     execTimeout: 120000, flatten: false, makeEmptyDirs: false,
                     noDefaultExcludes: false, patternSeparator: '[, ]+',
                     remoteDirectory: '/', remoteDirectorySDF: false, removePrefix: '', sourceFiles: '*/*')],
                     usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
    }
}

3.在系统配置Publish over SSH (插件)

4.赋权限

chmod 777  /va/run/docker.sock

 5.启动jenkins

docker run -p 8081:8080 -p 50000:50000 -d \
-v jenkins:/var/jenkins_home \
-v /usr/local/jdk1.8.0_221:/usr/local/jdk1.8.0_221 \
-v /usr/local/apache-maven-3.8.6:/usr/local/apache-maven-3.8.6 \
--env JAVA_OPTS="-Xms256m -Xmx512m -XX:MaxNewSize=256m" \
--name jenkins \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
--volume /etc/localtime:/etc/localtime \
--restart=always \
 jenkins/jenkins:latest

6.配置maven

JAVA_HOME
M2_HOME
PATH+EXTRA  $M2_HOME/bin

7.脚本

docker rm -f wx
docker rmi wx-template:1.0.0  
docker run -d -p 7002:7002 --name=wx  wx-template:1.0.0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值