部署鲍尔包
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提供者。
最后,点击“保存并完成”
鲍尔注册网址
通常,你会指向鲍尔注册网址字段,如上所示。
但是,如果您使用的是私有的wer注册表或远程Artifactory实例,只需设置与中配置的相同的URLURL字段。
Bower已经从Artifactory中配置的默认URL更改了他们的注册表URL。为了从公共注册中心进行解析,请将注册中心URL设置为https://registry.bower.io
。
虚拟存储库
Artifactory中定义的虚拟存储库聚合来自本地和远程存储库的包。
这允许您从为虚拟存储库定义的单个URL访问本地托管的Bower包和远程代理的Bower注册表。
创建虚拟鲍尔存储库集鲍尔成为它的包类型,和选择要包含的基础本地和远程Bower存储库存储库部分。
高级配置
下面的田野外部依赖重写连接到自动重写外部依赖项用于需要它们的鲍尔包。
启用依赖重写 |
选中后,将启用自动重写外部依赖项。 |
缓存远程存储库 |
由该虚拟存储库聚合的远程存储库,外部依赖将缓存在该虚拟存储库中。 |
模式允许列表 |
ant样式路径表达式的允许列表,指定可以从哪里下载外部依赖项。默认情况下,设置为**这意味着依赖关系可以从任何外部源下载。 例如,如果您希望将外部依赖项限制为只能从 |
使用鲍尔命令行
Bower存储库必须在路径中以api/ Bower作为前缀
当通过Artifactory访问Bower存储库时,存储库URL必须以api /鲍尔在小路上。这适用于所有的Bower命令,包括鲍尔安装
和鲍尔信息。
例如,如果您使用Artifactory独立或作为本地服务,您将使用以下URL访问您的Bower存储库:
http://localhost:8081/artifactory/api /鲍尔<库关键>
或者,如果您正在使用Artifactory Cloud, URL将是:
https:// < server name > .jfrog.io / artifactory /api /鲍尔<库关键>
Artifactory已经过更新,可以与1.5版的最新版本的Bower客户端无缝协作,并且还支持旧版本的Bower。
旧版本的鲍尔
如果您的Bower版本低于1.5,请参考使用旧版本的Bower。
使用鲍尔1.5及以上版本
为了在Artifactory中使用Bower,你需要2个组件(npm包):
- bower-art-resolver一个定制的、可插拔的鲍尔解析器,专门用于与Artifactory集成。
- 鲍尔-鲍尔版本1.5.0及以上。
安装了Bower后,通过编辑您的~ / .bowerrc
配置文件
{"resolvers": ["bower-art-resolver"]}
鲍尔文档
有关更多信息,请参阅有关的Bower文档可插拔的解析器。
将默认注册表替换为指向Artifactory中的Bower存储库的URL~ / .bowerrc
配置文件(下面的示例使用带有密钥的存储库)bower-repo
):
{"registry": "http://localhost:8081/artifactory/api/bower/bower-repo"}
使用鲍尔简写解析器
如果您想配置Bower速记解析器以使用Artifactory,请参考鲍尔速记解析器在下面。
.bowerrc文件位置
窗口:% userprofile % \ .bowerrc
Linux:~ / .bowerrc
我们建议参考虚拟存储库URL作为注册中心。这给了你灵活性重新配置和聚合您部署的其他外部源和本地包存储库。
一旦配置了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允许匿名访问wer存储库。它的定义是安全|通用配置。详情请参阅允许匿名访问。
如果希望能够跟踪用户与存储库的交互方式,则需要取消选中允许匿名访问设置。这意味着用户需要输入他们的用户名和密码。
不幸的是,Bower命令行工具不支持身份验证,您需要将凭据添加到中配置的Bower注册表的URL中~ / .bowerrc:
{"registry": "http://admin:password@localhost:8081/artifactory/api/bower/bower-repo"}
使用加密密码
使用加密密码而不是明文密码;看到集中安全密码。
清理本地电源缓存
鲍尔客户端保存下载的包的缓存,以及元数据响应。
我们建议在第一次使用Artifactory之前删除鲍尔缓存(包和元数据响应)。这是为了确保您的缓存只包含由于Artifactory请求而不是直接来自Artifactory的元素https://registry.bower.io。
要清除底层缓存,使用:
鲍尔缓存清理
自动重写外部依赖
鲍尔客户端请求的包经常使用包中定义的外部依赖项。鲍尔. json
文件。反过来,这些依赖关系可能需要额外的依赖关系。因此,在下载Bower包时,您可能无法完全了解原始包所需的全部依赖集(无论是直接的还是传递的)。因此,您面临着从未知外部资源下载恶意依赖项的风险。2022世界杯阿根廷预选赛赛程为了管理这种风险,并维护通过Artifactory使用外部包的最佳实践,您可以指定一个“安全”的白名单,从该白名单中可以下载依赖项,并将其缓存在Artifactory中,并配置为重写依赖项,以便鲍尔客户端通过虚拟存储库访问依赖项,如下所示:
- 检查启用依赖重写在Bower虚拟存储库高级配置中。
- 指定可以从中下载依赖项的外部资源的白名单模式。2022世界杯阿根廷预选赛赛程
- 指定应该缓存这些依赖项的远程存储库。
最好为此配置一个专用的远程存储库,这样更容易维护。
在下面的示例中,外部依赖项将被缓存在“wer”远程存储库中,并且仅来自包https://github.com/jfrogdev
允许被缓存。
重写工作流
当下载一个Bower包时,Artifactory会分析包所需的依赖项列表。
如果任何依赖项托管在外部资源上(例如on2022世界杯阿根廷预选赛赛程
github.com
),这些资源在白名单中有详2022世界杯阿根廷预选赛赛程细说明,Artifactory将从外部资源下载依赖项。
Artifactory将在配置为缓存外部依赖项的远程存储库中缓存依赖项。
Artifactory将修改依赖项在包中的条目包. json文件,指示其在Artifactory远程存储库缓存中的新位置,然后将其返回给wer客户机。
因此,每次鲍尔客户端需要访问依赖项时,它都将从Artifactory远程存储库缓存中的新位置提供。
使用鲍尔简写解析器
运行时鲍尔安装
在一个bower.json
,则需要在其中定义自定义模板。bowerrc
通过添加以下行创建文件。
shorthand-resolver”:“艺术:/ /{{所有者}}/{{包}}”
从v4.11版本开始,对于从远程存储库下载的较低包,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
注册鲍尔包
从4.6版本开始,Artifactory是一个Bower注册表,允许您通过远程和虚拟存储库注册Bower包。这意味着您可以直接从私有Git存储库中检索包。
在创建私有远程存储库时,Registry URL是冗余的,可以保持原样。
例如,托管在http://stash.mycompany.com:7990
有一个名为“artifactory”的项目将注册如下:
Bower register artifactory ssh://git@stash.mycompany.com:7999/artifactory/artifactory.git
注册服务器后,要从存储服务器下载Bower包并将其缓存到Artifactory中的远程Bower存储库中(可供用户访问),只需运行即可
凉亭安装人工
查看单个包房信息
Artifactory允许您直接从UI中查看鲍尔包的选定元数据。
在工件选项卡上,选择树浏览器并向下钻取zip / tar.gz
要检查的文件。元数据显示在鲍尔信息选项卡。