0

我正在使用 docker-maven-plugin(Spotify) 在我的 Spring Boot 项目中构建由 Dockerfile 生成的 docker 映像。如果项目没有任何模块依赖项,它运行良好。但是,如果一个模块依赖于另一个模块,例如:

<dependency>
    <groupId>com.mysite</groupId>
    <artifactId>helper</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

当我跑

./mvnw 安装 dockerfile:build

我有

无法解析项目 com.mysite:web:jar:0.0.1-SNAPSHOT 的依赖项:无法解析以下工件:com.mysite:helper:jar:0.0.1-SNAPSHOT

我该如何解决这个问题?

4

1 回答 1

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和利润!

不需要一个愚蠢的插件;)

于 2018-12-19T13:33:42.470 回答