我正在使用docker-maven-plugin(Spotify)在我的Spring Boot项目中构建Dockerfile生成的docker镜像。如果项目没有任何模块依赖项,那么它运行良好。 但是如果一个模块依赖于另一个模块:
<dependency>
<groupId>com.mysite</groupId>
<artifactId>helper</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
当我跑步时
./ mvnw install dockerfile:build
我得到了
无法解析项目的依赖项 com.mysite:web:jar:0.0.1-SNAPSHOT:以下工件不能 解决:com.mysite:helper:jar:0.0.1-SNAPSHOT
我该如何解决这个问题?
答案 0 :(得分:0)
您不需要插件即可完成此操作。
1)创建一个Dockerfile
:
FROM openjdk:8-jre-alpine
COPY build/libs/yourapp-0.0.1-SNAPSHOT.jar /application.jar
CMD ["java", "-jar", "/application.jar"]
2)创建一个shell脚本,或使用简单的Makefile
进行构建:
VERSION ?= $(shell git rev-parse HEAD)
APP ?= k8specs-platform-api
IMAGE ?= gcr.io/matthewdavis-devops/$(APP):$(VERSION)
.PHONY: build
all: build push
build:
./gradlew bootJar
docker build -t $(IMAGE) .
run:
docker run -p 8080:8080 $(IMAGE)
push:
docker push $(IMAGE)
3)只需运行make all
即可获利!
不需要愚蠢的插件;)