- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 Artifactory 上使用 Docker 注册表。我可以使用 docker 命令拉/推图像。现在我尝试使用 Jenkins pipline 推送图像。
该镜像名为 registry-url/docker/image:latest
。我在 Artifactory 上有一个名为 docker 的 docker 存储库。 (我可以使用 docker 命令拉取和推送到此存储库)。
此阶段描述了我的 Artifactory 配置:
...
stage('Deploy Docker image'){
steps {
script {
def server = Artifactory.server 'xxx'
def rtDocker = Artifactory.docker server: server
def buildInfo = rtDocker.push('registry-url/image:latest', 'docker')
//also tried:
//def buildInfo = rtDocker.push('registry-url/docker/image:latest', 'docker')
//the above results in registry/docker/docker/image..
server.publishBuildInfo buildInfo
}
}
}
...
当我使用不同的路径时,我会遇到 manifest.json
错误,这可能是正常的。我可以手动下载manifest.json:https://registry-url/artifactory/docker/image/latest/manifest.json
。
我在 Jenkins 上使用了一个相当新版本的 Docker:
Docker version 18.01.0-ce, build 03596f51b1
到目前为止一切顺利。但是当我运行管道时,我在 Jenkins 中收到以下错误(需要 50 秒):
Pushing image: registry-url/image:latest
...
com.github.dockerjava.api.exception.DockerClientException: Could not push image: unknown: Not Found
at com.github.dockerjava.core.command.PushImageResultCallback.awaitSuccess(PushImageResultCallback.java:49)
at org.jfrog.hudson.pipeline.docker.utils.DockerUtils.pushImage(DockerUtils.java:60)
at org.jfrog.hudson.pipeline.docker.utils.DockerAgentUtils$3.call(DockerAgentUtils.java:213)
at org.jfrog.hudson.pipeline.docker.utils.DockerAgentUtils$3.call(DockerAgentUtils.java:205)
at hudson.remoting.UserRequest.perform(UserRequest.java:153)
at hudson.remoting.UserRequest.perform(UserRequest.java:50)
...
在 Artifactory 日志中我看到:
2018-04-25 14:24:26,663 [http-nio-8081-exec-xx] [ERROR] (o.a.a.d.r.DockerResource:153) - Unsupported docker v2 repository request for 'image'
2018-04-25 14:24:46,684 [http-nio-8081-exec-xx] [ERROR] (o.a.a.d.r.DockerResource:153) - Unsupported docker v2 repository request for 'image'
2018-04-25 14:24:46,689 [http-nio-8081-exec-xx] [ERROR] (o.a.a.d.r.DockerResource:153) - Unsupported docker v2 repository request for 'image'
2018-04-25 14:24:46,702 [http-nio-8081-exec-xx] [ERROR] (o.a.a.d.r.DockerResource:153) - Unsupported docker v2 repository request for 'image'
我错过了什么或做错了什么?
编辑:基于此issue我回到了最初的想法:
def buildInfo = rtDocker.push('registry-url/docker/image:latest', 'docker')
我再次尝试构建。错误:
Could not find manifest.json in Artifactory in the following path: https://registry-url/artifactory/docker/docker/image/latest/manifest.json
路径中出现两次“docker”,但似乎不起作用。但是当我检查 Artifactory 时,图像就在那里......我也可以拉取图像。看起来不错,但 Jenkins 构建仍然失败。
Artifactory 插件:2.15.1
Artifactory版本:5.10.3
这真的是一个很快就会修复的错误吗?
最佳答案
Artifcatory 可以配置为带有或不带有反向代理的 Docker 注册表。您的 Artifactory 似乎未使用反向代理(无代理配置)进行配置。您可以阅读有关配置选项的更多信息 here .
Jenkins Artifactory 插件版本 2.16.1 添加了对无代理配置的支持。升级您的 Artifactory 插件应该可以解决您的问题。
关于docker - 无法使用 Artifactory 插件将 Docker 镜像推送到 Jenkins 管道中的 Artifactory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50022357/
我需要为我在 artifactory 中的一个 repo 协议(protocol)删除超过特定天数的 Artifactory 版本。我的意思是假设我的 artifactory url repo 是:-
我需要为我在 artifactory 中的一个 repo 协议(protocol)删除超过特定天数的 Artifactory 版本。我的意思是假设我的 artifactory url repo 是:-
我们使用的是 Artifactory 版本 4.12.2。如果我有十个本地存储库,并且我只想在五个存储库中保留最新的二十个 Artifactory ,而在其他五个存储库中则没有限制。需要建议我如何实现
我们想要两个 JFrog Artifactory 实例,一个供公司本地网络内部的用户使用(完全开放访问),另一个可以从外部使用(访问受限)。因此,我们希望第二个实例镜像第一个实例的部分(或全部)存储库
我在 Artifactory (OpenSource) 中有一些 Artifactory : 我可以使用 下载 Artifactory jfrog CLI : jfrog rt config --us
如何将特定 Artifactory 复制到另一个 Artifactory 实例? 据我所知,导出/导入功能仅适用于完整系统或完整的单个存储库复制。我也不想复制完整的 repo 协议(protocol)
我知道 artifactory 使用基于校验和的存储,并且只会存储一个 Artifactory 的一个副本,即使我以不同的名称上传多个相同的副本也是如此。 因为我有很多项目都使用匿名版本但可能是相同的
假设我有 Artifactory “mylibrary-5.2.jar”和“mylibrary-5.3.jar”,分别代表我们的项目为我们的其他项目之一创建和发布的库的 5.2 和 5.3 版本。 A
阅读本 API 指南。我的 Artifactory 版本是 4.12.2。 https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+
我在玩一个全新的OOS artifactory安装。我有一个 jcenter 的远程存储库.我正在寻找一种将远程 Artifactory 手动缓存到 jcenter-cach 的方法与 artifac
我有 Artifactory Jfrog 6.16.0 Pro。我安装了插件 artifactCleanup 并针对存储库运行它。它删除了大约 500GB。下一步,我从垃圾箱中删除文件,现在它为零。最
JFrog Artifactory 支持 NuGet 源。您将如何配置 Chocolatey 以指向 Artifactory 服务器而不是 Chocolatey.org? 最佳答案 创建一个指向 Ch
Maven Publishing的新手。我们的团队已经开始使用Artifactory,我正在尝试找出如何发布到Artifactory,但使用的是自定义 Artifact ID。这是我的build.gr
我正在使用 Jfrog artifactory OSS 版本 5。我可以看到我的快照存储库太大,我想从快照存储库中删除不需要的 Artifactory 。 我想删除过去 6 个月内未下载的所有 Art
我正在使用 Jfrog artifactory OSS 版本 5。我可以看到我的快照存储库太大,我想从快照存储库中删除不需要的 Artifactory 。 我想删除过去 6 个月内未下载的所有 Art
情况是这样的,我们在公司有一个共享文件夹,当我们放置一个应用程序的安装程序时(两个文件 .sh,一个用于 bin,另一个用于 conf),这是一个手动操作。 我们正在尝试让 Jenkins 自动执行此
我目前正尝试在 Artifactory 中查询与核心项目相关的特定 Artifactory 。所有 Artifactory 都将以项目标签为前缀。示例:“proj1-core”。我使用 Artifac
我已经设置了一个 Artifactory (4.1.2) 的实例,我用它来存储 java Artifactory 。我使用如下配置的 gradle 插件将 Artifactory 推送到实例 arti
我想永久链接到Artifactory中工件的最新快照版本。如果我们使用的是1.0-SNAPSHOT,我想要一个可下载最新的1.0-SNAPSHOT JAR的URL。通过在服务器上的http://hos
当我下载,解压缩并启动artifactory.sh时,看到以下错误 2020-02-26T21:32:50.496Z [jfac ] [ERROR] [c1b4de79a3f11666] [.j.a.
我是一名优秀的程序员,十分优秀!