美文网首页
spring boot 工程配置docker

spring boot 工程配置docker

作者: sweetMemories | 来源:发表于2017-07-25 11:35 被阅读0次

build.gradle示例代码

buildscript {
    ext {
        springBootVersion = '1.5.4.RELEASE'
    }
    repositories {
        mavenLocal()
        maven { url = "http://maven.aliyun.com/nexus/content/groups/public" }
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        classpath 'se.transmode.gradle:gradle-docker:1.2'
    }
}

apply plugin: 'java'
apply plugin: 'idea'
//apply plugin: 'war'
apply plugin: 'org.springframework.boot'
//docker所需插件
apply plugin: 'docker'

version = '1.0.0'
sourceCompatibility = 1.8

repositories {
    mavenLocal()
    maven { url = "http://maven.aliyun.com/nexus/content/groups/public" }
    mavenCentral()
}

dependencies {
    compile('org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.0')
    compile('org.springframework.boot:spring-boot-starter-web')
    compile('org.springframework.boot:spring-boot-starter-aop')
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('com.github.pagehelper:pagehelper-spring-boot-starter:1.1.1')
    compile('com.alibaba:druid:1.0.31')
    runtime('mysql:mysql-connector-java')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

//以下为jar配置
jar {
    baseName = "coupon"
    manifest {
        attributes 'Main-Class': 'net.mrpotato.CouponApplication'
    }
}
build.doLast {
    copy{
        from('build/libs')
        into('build/libs')
        include('coupon-'+version+'.jar')
        rename{'coupon.jar'}
    }
}

//以下为docker配置
group = 'coupon'
//mainClassName = 'net.mrpotato.CouponApplication'

task buildDocker(type: Docker, dependsOn: build, group: "coupon") {
    push = false
    applicationName = jar.baseName
    dockerfile = file('src/main/docker/Dockerfile')
    doFirst {
        copy {
            from jar
            into stageDir
        }
    }
}

build.gradle简要说明

  • 新增buildscript下的dependencies新增依赖classpath 'se.transmode.gradle:gradle-docker:1.2'
  • 新增插件"docker"
  • 设置group,用于docker镜像区分
  • 设置docker构建配置,主要是Dockerfile文件位置

Dockerfile内容

FROM java:8u111-jre
VOLUME /tmp
ADD coupon-1.0.0.jar coupon.jar
RUN sh -c 'touch /coupon.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /coupon.jar" ]

Dockerfile简要说明

  • 由于工程使用java8,故使用镜像java:8u111-jre(根据开发环境可选择其他版本)
  • VOLUME 容器挂载卷
  • ADD 拷贝jar到容器中
  • RUN 运行

相关文章

网友评论

      本文标题:spring boot 工程配置docker

      本文链接:https://www.haomeiwen.com/subject/trdwkxtx.html