首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven Jib插件: 401未经授权

Maven Jib插件: 401未经授权
EN

Stack Overflow用户
提问于 2019-09-09 16:27:50
回答 1查看 1.7K关注 0票数 3

我正在使用Maven Jib插件将我的应用程序部署到Gitlab docker注册表。如果我使用docker login registry.gitlab.com并输入用户名和密码,我就可以成功登录到gitlab注册表。我可以看到~/.docker/config.json包含以下信息:

代码语言:javascript
复制
{
        "auths": {
                "https://registry.gitlab.com": {},
                "registry.gitlab.com": {}
        },
        "HttpHeaders": {
                "User-Agent": "Docker-Client/19.03.2 (darwin)"
        },
        "credsStore": "desktop",
        "stackOrchestrator": "swarm"
}

现在,如果我尝试运行mvn -Djib.to.auth.username=${username} -Djib.to.auth.password=${password} compile jib:build,它将失败,并出现401Authorized异常。我需要传递用户名和密码的原因是,我希望在CICD管道中运行此命令,并且需要以某种方式传递用户名和密码。我已经测试了其他方法,比如在.m2/settings.xmlpom.xml中设置凭据。它们都不起作用。

EN

回答 1

Stack Overflow用户

发布于 2019-09-09 17:48:40

您可以在jib插件部分中获得凭据,如下所示

代码语言:javascript
复制
 <build>
    <plugins>
        <plugin>
            <groupId>com.google.cloud.tools</groupId>
            <artifactId>jib-maven-plugin</artifactId>
            <version>1.0.0</version>
            <configuration>
                <from>
                    <image>openjdk:8u171-alpine</image>
                </from>
                <to>
                    <image>registry.gitlab.com/${project.build.finalName}:${project.version}</image>
                    <auth>
                        <username>${jib.username}</username>
                        <password>${jib.password}</password>
                    </auth>
                </to>
            </configuration>
        </plugin>
    <plugins>            
 <build>

jib.usernamejib.password作为settings.xml中的属性。

注意:根据需要调整from图像。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57850321

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档