內容來自 https://help.sonatype.com/repomanager3/bower-repositories#BowerRepositories-BrowsingBowerRepositoriesandSearchingPackages
nexus3.0版本不只提供了maven的私服,還能夠託管docker、npm、bower甚至是python的倉庫,爲搭建統一的私服平臺提供了便利。前端
Bower是一個前端包管理工具。python
NexusOSS是一個強大的Maven倉庫管理器,它極大地簡化了本身內部倉庫的維護和外部倉庫的訪問。利用Nexus你能夠只在一個地方就可以徹底控制訪問和部署在你所維護倉庫中的每一個Artifact。Nexus是一套「開箱即用」的系統不須要數據庫,它使用文件系統加Lucene來組織數據。3.0版本以後加入了npm、bower、docker還有.net的倉庫管理。jquery
NexusOss能夠對bower的外部倉庫進行代理,好比代理官方庫:https://registry.bower.io 。在官方庫速度較慢的狀況下很是好用。git
建立bower代理庫的步驟:docker
NexusOss支持建立本地私服用於管理bower包。私服倉庫扮演了一個權威角色,定義包的URL和名稱的關係。shell
建立本地私服倉庫的操做步驟:數據庫
推薦使用倉庫組暴露Bower倉庫地址。倉庫組既能夠暴露多個代理倉庫和多個本地私服倉庫,當代理倉庫或者私服變更的時候不會影響到使用者。npm
建立步驟以下:json
npm install -g bower $ bower -v 1.7.7
使用Bower私服須要添加一個解析自定義URL的組件來完成解析NexusOss的工做。能夠經過下面兩種方式引入:maven
npm install -g bower-nexus3-resolver
或者引入到package.json中
"devDependencies" : { "bower-nexus3-resolver" : "*" }
一旦配置了Bower私服,就須要配置.bowerrc文件來實現到私服的URL解析。通常須要配置.bowerrc文件,能夠配置全局的.bowerrc,位於$HOME目錄下,也能夠配置在項目內部的.bowerrc文件中。
{ "registry" : { "search" : [ "http://localhost:8081/repository/bower-all" ] }, "resolvers" : [ "bower-nexus3-resolver" ] }
測試下效果:
$ bower install jquery bower jquery#* not-cached nexus+http://localhost:8081/repository/bower-all/jquery#* bower jquery#* resolve nexus+http://localhost:8081/repository/bower-all/jquery#* bower jquery#* resolved nexus+http://localhost:8081/repository/bower-all/jquery#2.2.0 bower jquery#^2.2.0 install jquery#2.2.0 jquery#2.2.0 bower_components/jquery
NexusOSS提供了網頁檢索和瀏覽包,固然也能夠經過Bower的命令行參數來檢索。
發佈Bower包,須要配置.bowerrc文件,制定register的位置;須要指定包的git路徑。
{ "registry" : { "search" : [ "http://192.168.1.62:8081/nexus/repository/bower-all" ], "register" : "http://admin:admin123@192.168.1.62:8081/nexus/repository/bower-hosted" }, "resolvers" : [ "bower-nexus3-resolver" ] }
執行上傳操做:
bower register example-package git://gitserver/project.git
測試安裝:
bower install example-package
上次部分注意的是register的URL必須把受權參數填入,由於NexusOss側須要權限驗證,不寫會一直報401的錯誤。