Nexus 簡介
Sonatype Nexus 是有名的 maven 倉庫管理器,可以用於構建 maven 的本地服務器。
sonatype nexus 3 是 maven nexus 私服的最新版本,與之前版本有較大的差異。
Nexus 術語
搭建 maven 私服之前最好了解幾個名詞,方便後面安裝好服務器之後做配置,同時也涉及 Nexus 下載的行爲模式。
Proxy Repository 代理倉庫
代理倉庫就是遠程倉庫的代理。默認 Nexus 倉庫管理自帶三種代理倉庫 Apache Snapshots/Codehaus Snapshots/Central,但是在 3.x 中就只有 Central 了。Nexus 3.x 對於 2.x 來說簡化了很多,配置理解起來也很簡單。
Hosted Repository 宿主倉庫
宿主倉庫就是被倉庫管理者持有的倉庫,Nexus 倉庫管理自帶三種宿主倉庫 3rd Party/Releases/Snapshots,在 3.x 中默認不帶 3rd Party 了。
Virtual Repository 虛擬倉庫
基本沒用過,不用關注,虛擬倉庫作爲一個適配器來對不同類型的倉庫進行轉換(例如 maven 1/ 2 之間轉換)。
Repository Group 倉庫組
看名字就知道,一些其它倉庫的組合,不具有實際倉庫的功能,只是對現有的倉庫組織起來,客戶端請求的還是實際配置的倉庫。
SNAPSHOT
快照版本,在 maven 中 SNAPSHOT
版本代表正式發佈(release)的版本之前的開發版本,在 pom 中用 x.y-SNAPSHOT
表示。
RELEASE
發佈版本,穩定版本,在 maven 中 RELEASE
代表着穩定的版本,unchange,不可改變的,在 maven 中 SNAPSHOT 與 RELEASE 版本在策略上是完全不同的方式,SNAPSHOT 會根據你的配置不同,頻繁的從遠程倉庫更新到本地倉庫;而 RELEASE 則只會在第一次下載到本地倉庫,以後則會先直接從本地倉庫中尋找。
pe nexus 3 是 maven nexus 私服的最新版本,與之前版本有較大的差異。
Nexus 3.x 安裝
前置條件要求存在 jdk1.8 的環境。
下載
地址:https://www.sonatype.com/download-oss-sonatype
下載最新版即可
linux 上安裝配置 Nexus
# 解壓
tar -zxvf nexus-3.14.0-04-unix.tar.gz
# 解壓的文件夾移到 nexus
mv nexus-3.14.0-04/ /usr/local/nexus
mv sonatype-work/ /usr/local/nexus
# 防火牆開啓 8081 端口,該端口是 nexus 的默認端口
# 在 /usr/local/nexus/etc/nexus-default.properties 文件中
vi /etc/sysconfig/iptables
# 在打開的文件中加入如下內容
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8081 -j ACCEPT
# 啓動
# ps 安裝時第一次啓動使用 ./nexus start 訪問不到 web 頁面,使用 run 命令可以,之後使用 start 也就可以了
./nexus run &
# 啓動成功會有如下信息
WARNING: ************************************************************
WARNING: Detected execution as "root" user. This is NOT recommended!
WARNING: ************************************************************
Starting nexus
上面啓動成功後會警告不要使用 root
用戶啓動,這裏既可以新建一個用戶,也可以指定 root 用戶啓動,使他不出現警告,下面配置指定 root 用戶啓動。
# 該文件在 bin 目錄下和啓動程序 nexus 同級
vi nexus-3.14.0-04/bin/nexus.rc
# 修改
run_as_user=root
啓動後就能看到如下界面:
使用默認管理賬號 admin/admin123
登錄 http://192.190.20.20:8081
。