我的连续传奇:
\n\n我在CentOS 7.4系统上运行Artifactory Pro 5.8.4,该系统使用 Artifactory 的内置Nginx服务作为反向代理。大多数时候,在下载大对象时,连接会失败。此外,在失败的连接中传输的最后几千字节的数据似乎是垃圾;因此,当文件恢复时,中间有一个无效的部分。\n失败时的 Nginx 日志提供以下错误消息:
\n\n\n\n\n2018/01/22 23:26:32 [错误] 884#0: *48048865 readv() 读取上游时失败(104:连接被对等方重置),客户端:12.2.178.130,服务器:~(?.+)。 artifactory.common.mycoolco.com,请求:“GET /controller/release/20171218-2119-2aa9f0e8c32bf3f08dd96a97127204d1f400f895fa2e67100a3830861c0becb0bfae28244c058510c8312e98378c 0b77251b4bb7926ceae2d465ce2d533b88dc HTTP/1.1”,上游:“ http://127.0.0.1:8081/artifactory/controller/release/20171218-2119- 2aa9f0e8c32bf3f08dd96a97127204d1f400f895fa2e67100a3830861c0becb0bfae28244c058510c8312e98378c0b77251b4bb7926ceae2d465ce2d533b88dc “,主机: “artifactory.common.mycoolco.com”
\n
Artifactory 日志通常(但并非总是)有如下所示的错误:
\n\n\n\n\n2018-01-22 23:14:20,106 [http-nio-8081-exec-87] [警告] (oarArtifactoryResponseBase:137) - 客户端关闭请求 499: java.net.SocketTimeoutException
\n
任何进一步的诊断建议将不胜感激。
\n\n这不会影响任何明显的更改:\n作为后续工作,我将在维护时段期间通过编辑 nginx.conf 文件 (/etc/opt/) 更改本周末(3 月 18 日星期日)测试的一些设置rh/rh-nginx18/nginx/nginx.conf) 包含设置“worker_processes 2”(当前为 1),将工作连接数从 1024 增加到 2048,并将 keepalive_timeout 从 65 更改为 130。
\n\n我们有一个托管在 AWS 中的 Artifactory 实例,没有其他代理或负载均衡器;只是一个实例和一个指向私有 IP …
我正在尝试针对特定用例评估 Artifactory,并且正在寻找可以支持将 Artifactory 用于档案存储库的文档。
我找到的只是一个用于部署工件的文档,这些文档已存档在 Artifactory 的知识库中。
但是,我正在寻找的是 Artifactory 是否支持 tars、zip 等档案?另外,是否有任何关于如何管理这些档案的文档(例如最佳实践、标记等问题)?
在 Jfrog Artifactory 中,我创建了一个只读用户,并尝试访问远程 NPM 包,该包是 NodeJS 存储库的一部分。例如
npm install @angular/material
,软件包无法下载并出现以下错误:
The user is part of a read only group.
npm ERR! code E403
npm ERR! 403 Forbidden:@angular/material@^5.2.5
Run Code Online (Sandbox Code Playgroud)
有人可以建议我们在哪里可以为用户设置读取权限吗?
这是一个已经存在的用户,其他 python 工件已成功安装。
即使 npm 本地存储库已成功安装,但从 npm 注册表获取的 npm 远程存储库会出现错误
我可以使用 .push 将 nuget 包推送到 Artifactory dotnet nuget push %WORKSPACE%\NuGetPackages\*.nupkg --source <url> --api-key <username>:<encrypted password>
。但是,我想使用 API 密钥或访问令牌进行推送,但尝试这样做时我收到403 Forbidden 。有可能让这个工作吗?
如何恢复/恢复使用jfrog delete rt
jfrog 存储库删除的工件。jfrog 设置中的垃圾桶配置为将已删除的图像保留 3 周。所以我知道它是可用的。但找不到恢复的方法。
JFrog 文档对恢复图像没有太大帮助。https://jfrog.com/knowledge-base/how-to-recover-deleted-moved-artifacts/
我正在尝试使用 CLI 命令将文件从 Jfrog 工件下载到本地计算机:
jfrog rt dl --user *username* --password *password* -url https://*domain*.jfrog.io/artifactory/*my-folder-name*/ --flat=false * c:/jfrog/
我越来越:
Log path: C:\Users\Administrator\.jfrog\logs\jfrog-cli.2020-08-19.18-38-11.3780.log
{ "status": "failure",
"totals": {
"success": 0,
"failure": 0
}
}
[Error] Download finished with errors, please review the logs.
Run Code Online (Sandbox Code Playgroud)
从日志中:
[Error] Artifactory response: 405 Method Not Allowed
但是,当我跑步时,jfrog rt ping
我得到
"OK"
Run Code Online (Sandbox Code Playgroud) 我有一个本地 Artifactory 存储库,我希望向我的用户提供 URL,以便他们能够安装轮子。它们本身不是 Artif\xd7\xa9\xd7\x91tory 的一部分,所以我正在考虑使用 API KEY。根据文件 -
\nour API key can be used to authenticate you when using the REST API.\nTo use the API key, add the following header to all REST API calls: 'X-JFrog-Art-Api: <YOUR_API_KEY>'\n
Run Code Online (Sandbox Code Playgroud)\n我有我的命令pip install https://artifactory.myorg.com:443/artifactory/local-pypi-mywork-01/mypackage-0.1-py3-none-any.whl
有没有办法提供 API 密钥作为此 URL 请求的标头?
\n我正在使用以下代码使用 PowerShell 从 Artifactory 下载文件。
#example Artifactory url
$artifactory_url = "https://artifactory.company.com/artifactory/"
#example Artifactory Key
$ArtifactoryKey = "<artifactory key>"
$wc = New-Object System.Net.WebClient
$wc.Headers.Add("X-JFrog-Art-Api", $ArtifactoryKey)
$files = @("test1.zip", "test.zip")
try {
foreach($file in $files) {
$wc.DownloadFile("$artifactory_url/$file", "D:\download\$file")
}
}
catch {
$Host.UI.WriteErrorLine("Error while Trying to download Artifacts.")
$Host.UI.WriteErrorLine($_.Exception.Message)
exit
}
Run Code Online (Sandbox Code Playgroud)
我现在在 Artifactory 上有一个存储库,其中有几个包含文件的递归文件夹。所以我需要下载该存储库的所有内容。
为了实现这一目标,我需要对上面的代码进行哪些更改?
升级到 Gradle 7 后,我收到许多警告,例如:
Cannot publish Ivy descriptor if ivyDescriptor not set in task ':myProject:artifactoryPublish' and task 'uploadArchives' does not exist.
Cannot publish pom for project ':myProject' since it does not contain the Maven plugin install task and task ':myProject:artifactoryPublish' does not specify a custom pom path.
Run Code Online (Sandbox Code Playgroud)
artifactoryPublish 任务运行良好。
我的 Gradle 脚本:
buildscript {
repositories{
maven {
url = '...'
credentials {
username '...'
password '...'
}
metadataSources {
mavenPom()
artifact()
}
}
}
dependencies {
classpath "org.jfrog.buildinfo:build-info-extractor-gradle:4.24.12"
}
} …
Run Code Online (Sandbox Code Playgroud) artifactory ×10
jfrog-cli ×2
gradle ×1
large-files ×1
log4j ×1
npm ×1
nuget ×1
nuget-server ×1
pip ×1
powershell ×1
pypi ×1
wget ×1