springboot~使用docker構建gradle項目

這是一篇關係到四個知識點的文章,分別是java,docker,springboot和gradle,咱們但願在java環境下,使用springboot框架,經過gradle去構建項目,而後把項目部署和運行在docker容器裏!java

  1. Java運行時
  2. springboot開源腳手架
  3. gradle最流行的項目構建工具
  4. docker最流行的容器產品

注意的地方

  1. 項目名稱就是鏡像名,因此只能是小寫字母
  2. build.gradle裏的jar就是gradle build生成的包
  3. Dockerfile默認放在src/main/docker目錄

開發過程

一 build.gradle文件git

   dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")

        classpath('se.transmode.gradle:gradle-docker:1.2')
    }

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'docker'

version = '1.0.0'
jar {
    baseName = 'springdemo'
}

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

src/main/docker/Dockerfile文件內容:github

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 https://github.com/bfyxzls/lindJar/blob/master/configServer-0.0.2.jar /deployments/app.jar
ADD --chown=jboss:jboss service1-0.0.1-SNAPSHOT.jar /deployments/app.jar

二 編譯項目spring

docker build

三 生成鏡像docker

docker build buildDocker

四 運行容器springboot

docker run -p 80:8080  springdemo-1.0.0

五 載圖app

 感謝各位閱讀!框架

相關文章
相關標籤/搜索