docker - 在Docker镜像中预安装Gradle插件

标签 docker gradle

我有一个执行Gradle构建的Docker镜像,需要一个Gradle插件。

在我的Dockerfile中,我想预装Gradle插件,这样当我在容器中运行Gradle任务时,不必每次有新容器时都将所有Jars下拉。

我怎样才能做到这一点?

该插件是bmuschko / gradle-docker-plugin

最佳答案

无法预安装gradle插件,但更重要的是,无需在docker内部或外部进行安装。您所需要做的就是按照插件GitHub页面上的描述将插件添加到构建的buildscript部分:https://github.com/bmuschko/gradle-docker-plugin

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.bmuschko:gradle-docker-plugin:X.Y.Z'
    }
}

如果您表示无法从容器中访问jcenter,并且希望将其静态包含在docker镜像中,则只需在maven目录结构之后的docker镜像构建步骤中将jar添加到镜像中的任意位置,然后在上面的内容中进行更改从jcentermaven { url "file:///reporoot/" }的存储库,其中/reporoot是容器内“存储库”的根目录:
buildscript {
    repositories {
        maven { url "file:///reporoot/" }
    }

    dependencies {
        classpath 'com.bmuschko:gradle-docker-plugin:X.Y.Z'
    }
}

关于docker - 在Docker镜像中预安装Gradle插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50279673/

相关文章:

docker - 从存储库中删除所有 Docker 镜像

gradle - 使用Gradle将包装的OSGi bundle 发布到 Artifactory

python - Docker Nginx 不监听浏览器

docker - 链接 docker 容器并使用通配符子域

docker - Docker:附加到分离的容器

android - 如何包含来自不同项目库的 .so 文件?

android - 如何在 Github 上创建库并通过 Android Studio 中的 gradle 依赖项使用它

java - 是否可以将 android 注释与 android studio 0.4.6 集成?

android - 我不能在 kotlin 中使用 DataBindingUtil.setContentView()

docker - 当Kubernetes Pod的限制重叠时,为什么Pod会随机失败?