我有一个Docker镜像,可以做Gradle构建并需要一个Gradle插件 .
在我的Dockerfile中,我想预先安装Gradle插件,这样当我在容器中运行Gradle任务时,每次我有一个新容器时都不必拉下所有的Jars .
我怎样才能做到这一点?
该插件是bmuschko / gradle-docker-plugin
无法预先安装gradle插件,但更重要的是,无需在docker内部或外部执行此操作 . 您需要做的就是将插件添加到构建的 buildscript 部分,如插件GitHub页面所述:https://github.com/bmuschko/gradle-docker-plugin
buildscript
buildscript { repositories { jcenter() } dependencies { classpath 'com.bmuschko:gradle-docker-plugin:X.Y.Z' } }
如果您的意思是您无法从容器中访问 jcenter 并希望将其静态包含在docker镜像中,只需在 maven 目录结构之后的docker镜像构建步骤中将jar添加到图像中的任何位置,并在上面更改存储库从 jcenter 到 maven { url "file:///reporoot/" } ,其中 /reporoot 是容器内"repository"的根:
jcenter
maven
maven { url "file:///reporoot/" }
/reporoot
buildscript { repositories { maven { url "file:///reporoot/" } } dependencies { classpath 'com.bmuschko:gradle-docker-plugin:X.Y.Z' } }
1 回答
无法预先安装gradle插件,但更重要的是,无需在docker内部或外部执行此操作 . 您需要做的就是将插件添加到构建的
buildscript
部分,如插件GitHub页面所述:https://github.com/bmuschko/gradle-docker-plugin如果您的意思是您无法从容器中访问
jcenter
并希望将其静态包含在docker镜像中,只需在maven
目录结构之后的docker镜像构建步骤中将jar添加到图像中的任何位置,并在上面更改存储库从jcenter
到maven { url "file:///reporoot/" }
,其中/reporoot
是容器内"repository"的根: