zoukankan      html  css  js  c++  java
  • DevOps之docker自动化部署-docker任务插件开发

    为了简化各个业务系统 build.gradle添加大量重复性docker-task,特编写插件,生成单一jar文件。
    简化各个项目的接入过程。
    整个Devops项目架构
    在这里插入图片描述
    开发过程中,参考了以下项目:
    docker-build-task插件开发参考

    插件源码,如有需要了解,可评论联系。

    build.gradle配置如下:

    buildscript {
        repositories {
            maven { url "http://...:8081/repository/maven-snapshots/" }
            maven { url "http://...:8081/repository/aliyun/" }
            mavenCentral()
        }
        dependencies {
            classpath "com.bmuschko:gradle-docker-plugin:3.2.1"
        }
    }
    version '1.0.4-SNAPSHOT'
    
    //apply plugin: 'com.bmuschko.docker-java-application'
    apply plugin: 'com.bmuschko.docker-remote-api'
    apply plugin: 'java'
    apply plugin: 'maven'
    apply plugin: 'groovy'
    apply plugin: 'java-gradle-plugin'
    
    dependencies {
        compile gradleApi()
        compile localGroovy()
        /*compile 'org.codehaus.groovy:groovy-all:2.3.11'*/
        compile group: 'org.gradle', name: 'gradle-tooling-api', version: '2.13'
        compile('com.bmuschko:gradle-docker-plugin:3.2.1')
        testCompile group: 'junit', name: 'junit', version: '4.12'
    }
    uploadArchives {
        repositories {
            mavenDeployer {
                //userName  和 password 为maven的用户名和密码
                //http://...:8081/repository/maven-snapshots/
                repository(url: "http://...:8081/repository/maven-snapshots/") {
                    authentication(userName: "admin", password: "admin123")
                }
                pom.project {
                    groupId="com.anji.devops"
                    artifactId="docker-plugin"
                    name=project.name
                    version=project.version
                    //version="1.0.0"
                    packaging='jar'
                    description='docker-plugin'
                }
            }
        }
    }
    artifacts {
        archives jar
    }
    

    插件开发完成后,接入方引用插件jar即可集成docker-build相关task.

    apply plugin: 'com.anji.devops.docker-plugin'
    

    jar上传maven仓库,参考
    gradle插件开发参考

  • 相关阅读:
    硬件的那些事
    seaJS学习资料参考
    nodejs前端自动化构建
    移动端开发的坑【持续更新...】
    【retina】手机上 1PX 边框
    【面试季之三】IE6兼容问题
    【面试季二】前端性能优化
    【面试季一】若干前端面试题
    【面试的坑】行内元素是否可以设置宽高
    Bootstrap和IE何时能相亲相爱啊~
  • 原文地址:https://www.cnblogs.com/coding-now/p/14660602.html
Copyright © 2011-2022 走看看