mac 安裝配置使用nexus3.x


一.nexus安裝

前置條件 :已經安裝了JDK

1:下載nexus(http://www.sonatype.com/download-oss-sonatype) 最新版本3.0,下載目錄為/Users/newuser/Downloads/

2:   在終端輸入/Users/newuser/Downloads/nexus-3.13.0-01-mac/nexus-3.13.0-01/bin/nexus start

3.   在瀏覽器中輸入http://localhost:8081/,如果能打開如下頁面,說明啟動成功

 

二.nexus搭建npm服務

環境

  • Contos 7
  • Nexus 3.10
  • npm 5.5.1

創建npm私庫

  • 通過瀏覽器訪問Nexus: 
    http://服務器IP:8081

  • 點擊右上角進行登錄,初始用戶名和密碼為:

admin
admin123

點擊設置界面,選擇Repositories,點擊Create repository,如下圖所示: 

这里写图片描述

 

創建blob 
創建一個blob用於存放npm相關數據

項目 詳細說明
Type File
Name npm-repo-blob
PATH /usr/local/sonatype-work/nexus3/blobs/npm-repo-blob

建議實際項目中各個倉庫根據具體情況決定是否要分別創建blob進行對應,此處進行演示就通篇使用一個blob

 

 

- 選擇倉庫類型,這里Docker有三種類型,分別是group、hosted、proxy。

項目 詳細說明
hosted 本地存儲,提供本地私庫功能
proxy 提供代理其他倉庫的類型
group 組類型,可以組合多個倉庫為一個地址提供服務

以proxy類型,所以選擇npm(proxy),如下圖: 

这里写图片描述

- 創建proxy倉庫

項目 詳細說明
類型 npm(proxy)
Name npm-repo-proxy
Remote Storage https://registry.npm.taobao.org
Blob store npm-repo-blob


注意:此處的Remote Storage即為可以連接的npm的registry的地址,需要保證正確,並且當前機器能夠訪問到,比如可以使用curl確認:

[root@angular ~]# curl https://registry.npmjs.org {"db_name":"registry","doc_count":715000,"doc_del_count":344,"update_seq":8090315,"purge_seq":0,"compact_running":false,"disk_size":5368389766,"data_size":3541008450,"instance_start_time":"1510668164237911","disk_format_version":6,"committed_update_seq":8090315}[root@angular ~]# 

注意此處,可以還設定與社區相關的賬號和密碼等信息進行進一步連接。

在這里是采用淘寶鏡像,如下圖: 

这里写图片描述

最后點擊下方Create repository完成創建倉庫。

 

 

創建priavete倉庫

 

創建一個Hosted的倉庫作為private倉庫,用於管理非npm社區的第三方包或者自己開發的內容。具體設定信息如下:

 

項目 詳細說明
類型 npm(hosted)
Name npm-repo-hosted
Blob store npm-repo-blob

 

其余Default設定即可 

 

創建group倉庫

創建一個group倉庫,具體設定信息如下:

項目 詳細說明
類型 npm(group)
Name npm-repo-group
Blob store npm-repo-blob
Member repositories npm-repo-hosted
Member repositories npm-repo-proxy

 

 

本地npm設定

 

驗證用npm版本

[root@angular ~]# npm -v
5.5.1
[root@angular ~]# node -v
v9.1.0
[root@angular ~]# 

設定.npmrc

可以使用如下命令,也可直接修改.npmrc文件

[root@angular ~]# npm config set registry http://localhost:8081/repository/npm-repo-proxy/
[root@angular ~]#
 
//確認.npmrc
[root@angular ~]# cat ~/.npmrc
registry=http://localhost:8081/repository/npm-repo-proxy/
[root@angular ~]# 

確認

至此,Nexus的設定准備基本就緒,可以確認結果了。

事前確認

[root@angular ~]# npm list -g gulp
/usr/local/npm/node/lib
└── (empty)

[root@angular ~]# 

安裝gulp

打開loglevel將其設定為info,在安裝的過程中可以看到npm http fetch與新創建的proxy倉庫的交互,因為其會將相關的依賴下載到本地nexus的npm私庫中。

[root@angular ~]# npm -loglevel info install -g gulp
npm info it worked if it ends with ok
npm info using npm@5.5.1
npm info using node@v9.1.0
...
npm http fetch GET 200 http://192.168.163.151:8081/repository/npm-repo-proxy/gulplog/-/gulplog-1.0.0.tgz 4439ms
...
/usr/local/npm/node/bin/gulp -> /usr/local/npm/node/lib/node_modules/gulp/bin/gulp.js
...
npm info lifecycle gulp@3.9.1~postinstall: gulp@3.9.1
+ gulp@3.9.1
added 186 packages in 143.59s
npm info ok 
[root@angular ~]# 

結果確認

[root@angular ~]# npm list -g gulp
/usr/local/npm/node/lib
└── gulp@3.9.1 

[root@angular ~]# 

group倉庫確認

gulp 3.9.1已經通過group倉庫可以看到 

这里写图片描述

proxy倉庫確認

gulp 3.9.1已經通過proxy倉庫可以看到

这里写图片描述

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM