java~springboot~gradle里的docker集成

在springboot里,我们的task任务可以添加docker构建的功能,在gradle集成环境里,直接可以实现编译,测试,打包镜像的流水线作业,很是方便!
下面分享给大家,在gradle里添加docker镜像的构建功能。

添加依赖

apply plugin: 'docker'

buildscript {
  repositories {
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        classpath('se.transmode.gradle:gradle-docker:1.2')
    }

  } 
}    

添加Dockerfile

//建立目录:/src/main/docker/
FROM fabric8/java-jboss-openjdk8-jdk:1.4

ENV JAVA_APP_JAR="app.jar"
ENV JAVA_MAX_MEM_RATIO=100
ENV AB_OFF ""
ADD --chown=jboss:jboss lindone-0.0.1.jar /deployments/app.jar

添加部署脚本

// 打包镜像
task buildDocker(type: Docker, dependsOn: build) {
    push = false
    applicationName = jar.baseName
    dockerfile = file('src/main/docker/Dockerfile')
    doFirst {
        copy {
            from jar
            into stageDir
        }
    }
}
// 复制jar文件
task copyJar(type: Copy) {
    dependsOn 'jar'
    from "build/libs/lindone-0.0.1.jar"
    into 'build/docker'
}
buildDocker.dependsOn copyJar
posted @   张占岭  阅读(1558)  评论(0编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2015-12-18 知方可补不足~sqlserver中对xml类型字段的操作
2011-12-18 泛型中的协变
2011-12-18 MVC中如何在controller的action中输出JS到页面上
点击右上角即可分享
微信分享提示