springboot~使用docker構(gòu)建gradle項(xiàng)目
這是一篇關(guān)系到四個(gè)知識(shí)點(diǎn)的文章,分別是java,docker,springboot和gradle,我們希望在java環(huán)境下,使用springboot框架,通過gradle去構(gòu)建項(xiàng)目,然后把項(xiàng)目部署和運(yùn)行在docker容器里!
- Java運(yùn)行時(shí)
- springboot開源腳手架
- gradle最流行的項(xiàng)目構(gòu)建工具
- docker最流行的容器產(chǎn)品
注意的地方
- 項(xiàng)目名稱就是鏡像名,所以只能是小寫字母
- build.gradle里的jar就是gradle build生成的包
- Dockerfile默認(rèn)放在src/main/docker目錄
開發(fā)過程
一 build.gradle文件
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文件內(nèi)容:
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
二 編譯項(xiàng)目
docker build

三 生成鏡像
docker build buildDocker

四 運(yùn)行容器
docker run -p 80:8080 springdemo-1.0.0
五 載圖

感謝各位閱讀!
浙公網(wǎng)安備 33010602011771號(hào)