使用Artifactoryx ?
JFrog Artifactoryx用户指南
有问题吗?想要报告问题?联系JFrog支持
概述
Artifactory支持鲍尔存储库在其现有的支持用于高级工件管理。
为Bower提供的Artifactory支持:
- 将所有存储库类型的Bower包从Artifactory提供给Bower命令行工具的能力。
- 为托管在Artifactory本地存储库中的Bower包计算元数据。
- 访问远程Bower注册中心(例如
https://registry.bower.io
)通过远程存储库它们提供了常用的代理和缓存功能。 - 从一个URL访问多个Bower注册中心的能力虚拟存储库.
- 根据项目或开发团队分配访问权限。
配置
局部存储库
使能计算Bower包元数据集鲍尔成为包类型当您创建本地Bower存储库时。
部署Bower包
Bower客户端没有提供部署包的方法,而是依赖于Git存储库来托管Bower包代码。
要将Bower包部署到Artifactory中,您需要使用Artifactory的REST API或者是Web UI.
一个Bower包是一个简单的tar.gz
文件,其中包含您的项目代码以及bower.json
描述包名称和版本的文件。
通常,您将使用自定义咕哝着说/狼吞虎咽地吃任务将项目打包到存档文件中,并将其部署到Artifactory。
版本属性
一定要包括一个版本
你的财产bower.json
文件。属性可以手动或使用鲍尔版本
命令。
远程存储库
公众鲍尔注册表不包含任何实际的二进制包;它是一个简单的键值存储,从包名指向等价的Git存储库。
由于大多数包都托管在GitHub中,您将需要创建一个远程存储库哪个作为缓存代理github.com.如果有必要,您也可以为bitbucket.org或其他要访问的远程存储库。
与Bitbucket合作?
如果你的包托管在Bitbucket(以前的Stash)上,你需要确保Bitbucket存档插件安装在你的Bitbucket服务器上。
从远程存储库请求的工件(如tar.gz文件)将根据需要缓存。您可以从远程存储库缓存中删除下载的构件,但是您不能手动将构件部署到远程存储库。
要定义一个远程存储库来代理github.com以及公共Bower注册表,请遵循以下步骤:
- 创建一个新的远程存储库并设置鲍尔成为它的包类型
- 设置库的关键值,并输入
https://github.com
在URL字段,如下所示 - 在鲍尔设置部分中,选择GitHub随着Git提供者.
最后,点击“保存并完成”
Bower注册地址
通常,你会点Bower注册地址字段,如上面所示。
但是,如果您正在使用私有的bower注册中心或远程Artifactory实例,只需设置与中配置的相同的URLURL字段。
Bower已经从Artifactory中的默认配置中更改了注册中心URL。为了从公共注册中心进行解析,请将注册中心URL设置为https://registry.bower.io.
虚拟存储库
Artifactory中定义的虚拟存储库聚合来自本地和远程存储库的包。
这允许您从为虚拟存储库定义的单个URL访问本地托管的Bower包和远程代理的Bower注册中心。
创建一个虚拟的Bower存储库集鲍尔成为它的包类型,而且选项中要包含的底层本地和远程凉亭存储库存储库部分.
高级配置
下面的田野外部依赖重写连接到自动重写外部依赖项给那些需要他们的包房包
启用依赖项重写 |
勾选后,将启用自动重写外部依赖项。 |
用于缓存的远程存储库 |
由该虚拟存储库聚合的远程存储库,外部依赖项将在其中缓存。 |
白名单模式 |
ant风格路径表达式的白列表,指定可以从哪里下载外部依赖项。默认情况下,设置为 例如,如果希望将外部依赖项限制为只能从 |
使用Bower命令行
Bower存储库必须在路径中添加api/ Bower前缀
当通过Artifactory访问Bower存储库时,存储库URL必须加上前缀api /鲍尔在路上。这适用于所有Bower命令,包括鲍尔安装
而且鲍尔信息。
例如,如果您正在使用Artifactory独立或作为本地服务,您将使用以下URL访问您的Bower存储库:
http://localhost:8081/artifactory/api /鲍尔<库关键>
或者,如果您正在使用Artifactory SaaS, URL将是:
https:// < server name >。jfrog.io / <服务器名> /api /鲍尔<库关键>
Artifactory已经进行了更新,可以从版本1.5开始与最新版本的Bower客户端无缝协作,并且还支持旧版本的Bower。
Bower的旧版本
如果您的Bower版本低于1.5,请参考使用旧版本的Bower.
使用Bower 1.5及以上版本
为了和Artifactory一起使用Bower,你需要2个组件(npm包):
- bower-art-resolver-一个自定义的,可插拔的Bower解析器,致力于与Artifactory集成。
- 鲍尔-凉亭版1.5.0及以上。
一旦安装了Bower,添加Artifactory Bower解析器编辑您的~ / .bowerrc
配置文件
{"resolvers": [" bauer -art-resolver"]}
鲍尔文档
有关更多信息,请参阅Bower文档可插拔的解析器.
将默认注册表替换为指向Artifactory中的Bower存储库的URL~ / .bowerrc
配置文件(下面的示例使用带有密钥的存储库bower-repo
):
{"registry": "http://localhost:8081/artifactory/api/bower/bower-repo"}
使用bowwer速记解析器
如果您想配置Bower速记解析器与Artifactory一起工作,请参考bowwer速记解析器在下面。
.bowerrc文件位置
窗口:% userprofile % \ .bowerrc
Linux:~ / .bowerrc
我们建议引用虚拟存储库URL作为注册表。这为您提供了灵活性以重新配置和聚合您部署的其他外部源和本地Bower包存储库。
一旦配置了Bower命令行工具,每个鲍尔安装
命令将从上面指定的bower存储库中获取包。例如:
$ bower install bootstrap bower bootstrap#* not-cached art://twbs/bootstrap#* bower bootstrap#* resolve art://twbs/bootstrap#* bower bootstrap#* extract archive.tar.gz bower bootstrap#* resolved art://twbs/bootstrap#e-tag:0b9cb774e1
使用旧版本的Bower
在没有匿名访问的情况下使用Artifactory
默认情况下,Artifactory允许匿名访问Bower存储库。它的定义是安全|总体配置.详情请参阅允许匿名访问.
控件,如果希望能够跟踪用户如何与存储库交互,则需要取消选中允许匿名访问设置。这意味着用户需要输入用户名和密码。
不幸的是,Bower命令行工具不支持身份验证,您需要将凭据添加到配置的Bower注册中心的URL中~ / .bowerrc:
{"registry": "http://admin:password@localhost:8081/artifactory/api/bower/bower-repo"}
清理本地Bower缓存
Bower客户端保存已下载包的缓存以及元数据响应。
我们建议在第一次使用Artifactory之前删除Bower缓存(包和元数据响应)。这是为了确保您的缓存只包含来自Artifactory请求的元素,而不是直接来自Artifactory的https://registry.bower.io.
清除bower缓存使用:
凉亭缓存清理
自动重写外部依赖项
Bower客户端请求的包经常使用包的外部依赖关系。鲍尔. json
文件。这些依赖关系可能反过来需要其他依赖关系。因此,在下载Bower包时,您可能无法完全看到原始包所需的全部依赖集(无论是直接的还是传递的)。因此,您可能会从未知的外部资源下载恶意依赖项。2022世界杯阿根廷预选赛赛程为了管理这种风险,并维护通过Artifactory使用外部包的最佳实践,您可以指定一个“安全”白名单,从中可以下载依赖项,并将其缓存到Artifactory中,并配置为重写依赖项,以便Bower客户端通过虚拟存储库访问依赖项,如下所示:
- 检查启用依赖项重写在Bower虚拟存储库中高级配置.
- 指定可以从中下载依赖关系的外部资源的白名单模式。2022世界杯阿根廷预选赛赛程
- 指定应该在其中缓存这些依赖项的远程存储库。
最好为此目的配置一个专用的远程存储库,这样更容易维护。
在下面的例子中,外部依赖项将被缓存在“bower”远程存储库中,并且仅包从https://github.com/jfrogdev
允许被缓存。
重写工作流
下载Bower包时,Artifactory会分析包所需的依赖项列表。
如果任何依赖项托管在外部资源上(例如on2022世界杯阿根廷预选赛赛程
github.com
),而这些资源已列在白名单2022世界杯阿根廷预选赛赛程内,Artifactory将从外部资源下载依赖项。
Artifactory将在配置为缓存外部依赖项的远程存储库中缓存依赖项。
Artifactory将修改包中依赖项的条目包. json文件在返回给Bower客户端之前,指示它在Artifactory远程存储库缓存中的新位置。
因此,每当Bower客户端需要访问依赖项时,它将从Artifactory远程存储库缓存中的新位置进行供应。
使用bowwer速记解析器
运行时鲍尔安装
在一个bower.json
文件中的自定义模板,则需要在。bowerrc
文件,添加以下行。
shorthand-resolver”:“艺术:/ /{{所有者}}/{{包}}”
从v4.11版本开始,对于从远程存储库下载的bower包,Artifactory支持解析使用凉亭速记解析器用于托管在GitHub上的依赖项.简略解析器的使用反映在Bower安装输出中,在简略解析器依赖项中,前缀为$ $ $ art-shorthand-resolver $ $ $
.例如:
鲍尔mypackagetest # $ $ $ art-shorthand-resolver $ $ $ - <用户名> -mypackagetest-master.tar.gz not-cachedart: / / <用户名> / mypackagetest # $ $ $ art-shorthand-resolver $ $ $ - <用户名> -mypackagetest-master.tar.gz鲍尔mypackagetest # $ $ $ art-shorthand-resolver $ $ $ - <用户名> -mypackagetest-master.tar.gz resolveart: / / <用户名> / mypackagetest # $ $ $ art-shorthand-resolver $ $ $ - <用户名> -mypackagetest-master.tar.gz鲍尔mypackagetest # $ $ $ art-shorthand-resolver $ $ $ - <用户名> -mypackagetest-master.tar.gzresolvedart: / / <用户名> / mypackagetest # $ $ $ art-shorthand-resolver $ $ $ - <用户名> -mypackagetest-master.tar.gz
注册Bower包
从4.6版开始,Artifactory是一个Bower注册表,允许您通过远程和虚拟存储库注册Bower包。这意味着您可以直接从私有Git存储库检索bower包。
在创建私有远程存储库时,注册中心URL是多余的,可以保持原样。
例如,托管在http://stash.mycompany.com:7990一个名为“artifactory”的项目将注册如下:
Bower注册artifactory ssh://git@stash.mycompany.com:7999/artifactory/artifactory.git
注册服务器之后,要从stash服务器下载Bower包,并将其缓存到Artifactory中的远程Bower存储库中(供用户访问),只需运行即可
凉亭安装工艺
查看单个机箱包信息
Artifactory允许您直接从UI查看选定的Bower包的元数据。
在工件选项卡上,选择树浏览器并向下钻取以选择zip / tar.gz
要检查的文件。元数据显示在鲍尔信息选项卡。