问题标签 [dockerfile-maven-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - dockerfile-maven-plugin 在 gitlab-ci 注册表上推送图像
我正在使用来自 spotify 的 dockerfile-maven-plugin:
在本地,它完美运行。默认配置使用本地注册表:
在 gitlab-ci 上,要推送图像,我使用以下命令
我不太确定注册表、用户名和密码,但我在文档和几个示例中发现了这一点。
我有以下错误:
关于我应该在 GitLab 上使用的配置有什么想法吗?
maven - spotify dockerfile-maven Dockerfile
我是一个 docker maven 插件新手。
如果我理解得很好,根据Spotify 的 Dockerfile Maven 文档,应该将 Dockerfile 放在我项目的根目录中(我正在运行一个 spring boot 项目)。
在参考docker 编写 Dockerfiles 的最佳实践时:
无论 Dockerfile 实际位于何处,当前目录中文件和目录的所有递归内容都会作为构建上下文发送到 Docker 守护进程。无意中包含构建映像不需要的文件会导致更大的构建上下文和更大的映像大小。
这是否意味着当 Spotify Dockerfile Maven 插件运行配置时,我正在公开发送给 docker 守护进程的源文件夹?
docker - spotify docker/dockerfile maven 插件 [错误] 复制失败
我正在尝试mvn clean package docker:build
在我的项目上执行它失败并出现以下错误
错误] 无法在项目 mma-access-management-auth-server 上执行目标 com.spotify:docker-maven-plugin:1.1.0:build (default-cli):捕获异常:复制失败:stat /var/lib/ docker/tmp/docker-builder181535370/mma-access-management-app-1.0.0-SNAPSHOT.jar:没有这样的文件或目录-> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException:无法执行目标com .spotify:docker-maven-plugin:1.1.0:build (default-cli) on project mma-access-management-auth-server:在 org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor. java:213) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) at org.apache .maven.lifecycle.internal.LifecycleModuleBuilder。buildProject (LifecycleModuleBuilder.java:117) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) 在 org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder. java:51) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309) at org.apache.maven.DefaultMaven .doExecute (DefaultMaven.java:194) 在 org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107) 在 org.apache.maven.cli.MavenCli.execute (MavenCli.java:955) 在 org.apache。 maven.cli.MavenCli.doMain (MavenCli.java:290) 在 org.apache.maven.cli.MavenCli.main (MavenCli.java:194) 在 sun.reflect.NativeMethodAccessorImpl。在 sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke (Method.java:43) 的 invoke0 (Native Method) 498) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) 在 org.codehaus.plexus.Launcher.launch (Launcher.java:229) .classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) 引起:org.apache.maven.plugin.MojoExecutionException:异常在 com.spotify.docker.BuildMojo.execute (BuildMojo.java:324) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) 在 org.apache.maven.lifecycle 的 org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:134) .internal.MojoExecutor.execute (MojoExecutor.java:154) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder .java:117) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) 在 org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51 ) 在 org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) 在 org.org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:194) 在 org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:309) 在 org.apache.maven.DefaultMaven.execute (DefaultMaven.java:107) 在 org .apache.maven.cli.MavenCli.execute (MavenCli.java:955) 在 org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290) 在 org.apache.maven.cli.MavenCli.main (MavenCli .java:194) 在 sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) 在 java。 org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) 在 org.codehaus.plexus.classworlds.launcher 的 lang.reflect.Method.invoke (Method.java:498)。Launcher.launch (Launcher.java:229) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java: 356)引起:com.spotify.docker.client.exceptions.DockerException:复制失败:stat /var/lib/docker/tmp/docker-builder181535370/mma-access-management-app-1.0.0-SNAPSHOT.jar:没有这样的文件或目录
这是我的 pom.xml
这是我的 Dockerfile
我不知道那会出错。我还尝试使用来自 spotify 的 dockerfile 插件,但也失败了。
dockerfile - 评估 dockerfile 中的 ARG
我正在使用 dockerfile maven 插件来构建 docker 映像。在 pom.xml 文件中,3 个 args 将被发送到 dockerfile。我在这里添加了我的 dockerfile。
pom.xml 文件
运行时,它不会采用${TOMCAT_JULI_VERSION}和${TOMCAT_JULI_ADAPTER_VERSION}中的值,而是采用 ${PROJECT_BASE_DIR} 值。我收到以下错误。
添加失败:stat /var/lib/docker/tmp/docker-builder537359917/target/dependency/tomcat-extras-juli-.jar:没有这样的文件或目录
maven - 构建 Spring Boot 应用程序的 Docker 镜像文件
我正在尝试使用 dockerfile-maven-plugin 为我的 spring boot maven 项目构建一个 docker 映像。我在 Windows 7 上使用 Docker Tool Box,它运行良好。
我收到以下错误:
无法加载 Google 应用程序默认凭据 java.io.IOException:应用程序默认凭据不可用。如果在 Google Compute Engine 中运行,它们就可用。否则,必须定义环境变量 GOOGLE_APPLICATION_CREDENTIALS 指向定义凭据的文件。有关详细信息,请参阅 https://developers.google.com/accounts/docs/application-default-credentials 。
Pom.XML 构建
我无法理解为什么我们需要谷歌默认凭据来构建本地映像。请帮助我,因为我是 Docker World 的新手。
docker - Docker 容器打印“没有这样的文件或目录”
我对 docker 还很陌生,我完全不知道如何解决我的问题。我已经搜索和搜索,到目前为止,我发现没有任何东西可以解决我的问题。
无论我做什么,我似乎都无法找到并执行我的 bash 脚本。
仅供参考 - 我正在使用 dockerfile-maven-plugin 启动 docker 构建过程
这是我的码头文件:
这是我的脚本
构建 docker 映像的输出
运行图像时输出
提前感谢您的任何帮助。
maven - 如何在 pom.xml 中检索 Maven 内部版本号?
我想在 pom.xml 中检索 maven 内部版本号,以便我可以使用它来使用 dockerfile-maven-plugin 标记 docker 映像。我已经检查了https://www.mojohaus.org/buildnumber-maven-plugin/usage.html但这不是我想要的。根据https://docs.oracle.com/middleware/1212/core/MAVEN/maven_version.htm#MAVEN8855如何获取要在我的 pom.xml 中使用的构建信息?可能吗?谢谢!
docker-compose - spotify dockerfile-maven-plugin 如何使用“docker-compose build”?
从文档https://github.com/spotify/dockerfile-maven,它说:
例如,一个 docker-compose.yml 可能看起来像:
现在, docker-compose up 和 docker-compose build 将按预期工作。
但是pom.xml
文件怎么写,还是好像不使用compose一样?将目标设定为“构建”?
maven - com.spotify/dockerfile-maven-plugin:标记失败:路径为“空”
对于在 CI 运行器上使用 com.spotify:dockerfile-maven-plugin 构建的多模块 maven 项目,dockerfile:build dockerfile:tag
在上一步中构建 docker 映像并在部署步骤中运行mvn clean deploy dockerfile:push
会导致错误:
日志:
Tagging image null as REPO_NAME/IMAGE_NAME
显然,构建的图像没有被正确标记。
pom.xml
:
但我真的找不到我做错了什么。
java - Maven项目中8u162-jdk的拉取访问被拒绝
我在 maven 项目中有一个 dockerfile,当我使用 docker 基础映像8u162-jdk时,我在构建中出现此错误。
当我使用openjdk:8u131-jdk-alpine时,构建工作正常,但我需要将 JDK 版本更改为8u162。
如何解决这个问题?当我们想要 JDK 的 8u162 版本时,使用什么正确的镜像?