Bha*_*aja 5 java maven docker spring-boot microservices
我正在开发小型 Spring Boot 微服务应用程序。当我尝试创建自定义 Spring 映像以部署到 Docker 引擎时,我遇到了一个问题。为了创建新的自定义图像,我在 POM 文件的 Maven 插件部分中使用配置元素。
\n\n\n错误:无法在项目 BankModule 上执行 goal\norg.springframework.boot:spring-boot-maven-plugin:2.5.5:build-image\n(default-cli):执行 goal\norg.springframework 的 default-cli。 boot:spring-boot-maven-plugin:2.5.5:build-image\n失败:无法解析图像引用\n“kolludocker/ms1-BankModule:0.0.1-SNAPSHOT”。图像引用必须采用\'[domainHost:port/][path/]name[:tag][@digest]\'格式,其中\n\'path\'和\'name\'仅包含[a -z0-9][.][_][-] -> [帮助 1]\n[错误]
\n
文件pom.xml:
<?xml version="1.0" encoding="UTF-8"?>\n<project xmlns="http://maven.apache.org/POM/4.0.0"\n xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\n <modelVersion>4.0.0</modelVersion>\n\n <parent>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-parent</artifactId>\n <version>2.5.5</version>\n <relativePath/> <!-- lookup parent from repository -->\n </parent>\n\n <groupId>com.kollu.BankModule</groupId>\n <artifactId>BankModule</artifactId>\n <version>0.0.1-SNAPSHOT\n </version>\n <name>BankModule</name>\n <description>BankModule SpringBoot and MicroServices project\n </description>\n <properties>\n <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\n <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>\n <java.version>1.8</java.version>\n <spring-cloud.version>2020.0.4</spring-cloud.version> <!-- Eureka server -->\n </properties>\n <dependencies>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-actuator</artifactId>\n </dependency>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-data-jpa</artifactId>\n </dependency>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-web</artifactId>\n </dependency>\n <!-- Eureka server -->\n <dependency>\n <groupId>org.springframework.cloud</groupId>\n <artifactId>spring-cloud-starter</artifactId>\n </dependency>\n <dependency>\n <groupId>org.springframework.cloud</groupId>\n <artifactId>spring-cloud-starter-config</artifactId>\n </dependency> <!-- Inbuild LoadBalancer dependency-->\n <dependency>\n <groupId>org.springframework.cloud</groupId>\n <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>\n </dependency>\n <!-- Fault tolerance- Circuit Breakers with resilience4j -->\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-aop</artifactId>\n </dependency>\n <dependency>\n <groupId>io.github.resilience4j</groupId>\n <artifactId>resilience4j-spring-boot2</artifactId>\n </dependency>\n <!-- Distributed Tracing(To generate unique id per each logger) - sleuth,RabbitMQ,ZipKin --> <!-- <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-sleuth</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-sleuth-zipkin</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> -->\n <!-- mvnrepository.com/artifact/org.springframework.boot/\xe2\x80\xa6 -->\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-devtools</artifactId>\n <scope>runtime</scope>\n <optional>true</optional>\n </dependency>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-test</artifactId>\n <scope>test</scope>\n </dependency>\n <!-- Oracle -->\n <dependency>\n <groupId>com.oracle.database.jdbc</groupId>\n <artifactId>ojdbc8</artifactId> <!-- <scope>12.2.0.1</scope> -->\n <version>12.2.0.1</version><!--$NO-MVN-MAN-VER$-->\n </dependency> <!-- Swagger api -->\n <dependency>\n <groupId>io.springfox</groupId>\n <artifactId>springfox-swagger2</artifactId>\n <version>2.7.0</version>\n </dependency>\n <dependency>\n <groupId>io.springfox</groupId>\n <artifactId>springfox-swagger-ui</artifactId>\n <version>2.7.0</version>\n </dependency>\n <!-- Field/ Input values validation -->\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-validation</artifactId>\n </dependency>\n </dependencies> <!-- Eureka server -->\n <dependencyManagement>\n <dependencies>\n <dependency>\n <groupId>org.springframework.cloud</groupId>\n <artifactId>spring-cloud-dependencies</artifactId>\n <version>${spring-cloud.version}</version>\n <type>pom</type>\n <scope>import</scope>\n </dependency>\n </dependencies>\n </dependencyManagement>\n\n <build>\n <plugins>\n <plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId>\n <version>2.5.5</version><!--$NO-MVN-MAN-VER$-->\n <configuration>\n <image>\n <name>kolludocker/ms1-${project.artifactId}:${project.version}</name>\n </image>\n <pullPolicy>IF_NOT_PRESENT</pullPolicy>\n </configuration>\n </plugin>\n </plugins>\n </build>\n</project>\nRun Code Online (Sandbox Code Playgroud)\n
小智 6
工件 ID 的名称中包含大写字母。给出的错误说明:
'路径'和'名称'仅包含[a-z0-9][.][_][-]
一旦您将工件 ID“BankModule”设置为“bank-module”,这就会起作用。
您是否尝试过小写并将其设置为属性?这对我来说效果很好(v2.6.3)并且恕我直言更优雅/紧凑:
<properties>
<spring-boot.build-image.imageName>io.bla/example/bla</spring-boot.build-image.imageName>
</properties>
Run Code Online (Sandbox Code Playgroud)