大家好转培,我是袁庭新。今天帶領(lǐng)大家來學(xué)習(xí)Nexus如何下載與安裝浆竭。保姆級教程哦~
目前Nexus分為Nexus 2和Nexus 3兩個大版本,它們是并行的關(guān)系惨寿,也就是說Nexus 2.x在更新迭代邦泄,Nexus 3.x也在更新迭代,兩個大的版本互不影響裂垦。與Nexus 2相比顺囊,Nexus 3具有很多優(yōu)勢,例如支持更多的倉庫格式蕉拢、優(yōu)化了用戶的使用界面以及更加強(qiáng)大的搜索功能等等特碳。
Nexus下載地址:Nexus 2.x下載地址、Nexus 3.x下載地址晕换。
目前使用最多的午乓,運(yùn)行最穩(wěn)定是Nexus 2,但隨著Nexus 3對Maven的支持越來越穩(wěn)定闸准,很多公司和組織都陸續(xù)開始使用Nexus 3益愈。本節(jié)我們將介紹Nexus 3的安裝和訪問過程。
1.下載Nexus 3
1.1 Nexus 3下載安裝
Sonatype Nexus Repository在這里可用于蘋果macOS、Microsoft Windows和Unix/Linux的64位版本下載蒸其。它們包含安裝和運(yùn)行Sonatype Nexus存儲庫的所有必要資源敏释。
1.進(jìn)入Nexus 3.x 下載頁面(目前最新版是3.61.0-02),根據(jù)操作選擇適合自己的相應(yīng)的版本進(jìn)行下載摸袁。
2.將下載的Nexus安裝包解壓到本地钥顽,可獲得nexus-3.61.0-02和sonatype-work兩個目錄。
1.2 Nexus 3目錄介紹
Nexus解壓后將出現(xiàn)兩個目錄靠汁,現(xiàn)對這兩個目錄作用進(jìn)行介紹耳鸯。
文件夾 | 作用 |
---|---|
sonatype-work | 數(shù)據(jù)目錄。此目錄包含存儲庫管理器存儲和管理的所有存儲庫膀曾、組件和其他數(shù)據(jù)县爬。相對于安裝目錄,數(shù)據(jù)目錄的默認(rèn)位置是../sonatype-work/nexus3 添谊。 |
nexus-3.61.0-02 | 安裝目錄财喳。此目錄包含Nexus Repository Manager應(yīng)用程序和所有必需的附加組件,如Java庫和配置文件斩狱。默認(rèn)情況下耳高,目錄名稱使用nexus- ,并附加版本名稱所踊。 |
安裝目錄(nexus-3.61.0-02)下的目錄及文件說明泌枪,如下表所示。
目錄文件 | 作用 |
---|---|
LICENSE.txt和NOTICE.txt | 這些文件包含有關(guān)許可證和版權(quán)聲明的法律細(xì)節(jié) |
bin/ | 此目錄包含Nexus啟動腳本本身以及與啟動相關(guān)的配置文件 |
etc/ | 此目錄包含配置文件 |
lib/ | 此目錄包含與Apache Karaf相關(guān)的二進(jìn)制庫 |
public/ | 此目錄包含應(yīng)用程序的公共資源 |
system/ | 此目錄包含構(gòu)成應(yīng)用程序的所有組件和插件 |
數(shù)據(jù)目錄內(nèi)容對每個實例都是獨(dú)一無二的秕岛,包括包含存儲庫管理器使用的所有組件碌燕、存儲庫、配置和其他持久數(shù)據(jù)的子目錄继薛。默認(rèn)情況下修壕,數(shù)據(jù)目錄位于../sonatype-work/nexus3
。
數(shù)據(jù)目錄(sonatype-work)下的目錄及文件說明遏考,如下表所示慈鸠。
目錄文件 | 作用 |
---|---|
blobs/ | 未定義絕對存儲路徑的所有基于文件系統(tǒng)的blob存儲的父目錄。例如灌具,默認(rèn)blob存儲將位于../sonatype-work/nexus3/blobs/default 青团。 |
cache/ | 此目錄包含當(dāng)前緩存的Karaf捆綁包的信息。 |
db/ | 此目錄包含OrientDB數(shù)據(jù)庫咖楣,這些數(shù)據(jù)庫是存儲庫管理器元數(shù)據(jù)的主要存儲督笆。 |
elasticsearch/ | 此目錄包含當(dāng)前配置的Elasticsearch狀態(tài)。 |
etc/ | 此目錄包含存儲庫管理器的主要運(yùn)行時配置和自定義截歉。 |
health-check/ | 此目錄包含來自存儲庫健康檢查功能的緩存報告胖腾。 |
keystores/ | 這包含用于識別存儲庫管理器的自動生成密鑰。 |
log/ | 此目錄和子目錄包含活動和存檔的應(yīng)用程序日志文件。 |
log/audit/ | 啟用審計后咸作,審計日志將寫入此目錄锨阿。 |
log/tasks/ | 任務(wù)可以為每次執(zhí)行生成日志,以便更好地檢查該任務(wù)的執(zhí)行情況记罚。這些日志文件包含的消息通常過于嘈雜墅诡,無法放入主應(yīng)用程序日志中。日志由任務(wù)內(nèi)部名稱和時間戳命名桐智。 |
tmp/ | 此目錄用于臨時存儲末早。 |
2.啟動Nexus服務(wù)
2.1 MacOS運(yùn)行Nexus服務(wù)
在McOS系統(tǒng)下有關(guān)Nexus服務(wù)操作的命令總結(jié)見下表:
命令 | 作用 |
---|---|
nexus start | 后臺啟動Nexus服務(wù) |
nexus run | 前臺啟動Nexus服務(wù),能看到實時刷新的日志信息说庭,關(guān)掉窗口后就停止了 |
nexus stop | 停止Nexus服務(wù) |
nexus restart | 重啟Nexus服務(wù) |
nexus status | 查看Nexus服務(wù) |
nexus help | 查看Nexus命令清單 |
nexus install | 安裝Nexus服務(wù) |
nexus uninstall | 卸載Nexus服務(wù) |
2.1.1 啟動Nexus服務(wù)
1.啟動Nexus服務(wù)方式一
啟動Nexus服務(wù)時然磷,必須要進(jìn)入到nexus-3.61.0-02-mac/nexus-3.61.0-02/bin目錄下才能操作nexus文件。
# 進(jìn)入nexus-3.61.0-02-mac/nexus-3.61.0-02/bin目錄
yuanxin@yuanxindeMacBook-Pro ~ % cd /Users/yuanxin/Documents/ProgramSoftware/nexus-3.61.0-02-mac/nexus-3.61.0-02/bin
# 啟動Nexus服務(wù)
yuanxin@yuanxindeMacBook-Pro bin % ./nexus start
目前的Nexus OS 3.xxx的版本刊驴,需要依賴JDK環(huán)境姿搜,且必須是JDK 1.8的版本。如果服務(wù)器安裝的JDK配置的環(huán)境變量不是JDK 1.8捆憎,在運(yùn)行上述./nexus start
命令后舅柜,會報如下的錯誤:
No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be 1.8.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.
出現(xiàn)上述的錯誤,具體的解決方案將在[2.2.1.2 配置Nexus的JDK版本]章節(jié)中進(jìn)行介紹躲惰。
2.啟動Nexus服務(wù)方式二
在Mac OS上運(yùn)行服務(wù)的標(biāo)準(zhǔn)方法是使用launchd
致份,這是一個在Apple OS X環(huán)境中啟動、停止和管理守護(hù)進(jìn)程和腳本的程序础拨。要運(yùn)行該服務(wù)氮块,需要創(chuàng)建一個XML文檔,文件擴(kuò)展名為.plist
太伊,以定義其屬性雇锡。安裝在/opt
目錄下的存儲庫管理器的plist文件示例如下:
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.sonatype.nexus</string>
<key>ProgramArguments</key>
<array>
<string>/Users/yuanxin/Documents/ProgramSoftware/nexus-3.61.0-02-mac/nexus-3.61.0-02/bin/nexus</string>
<string>start</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
將文件保存為/Library/LaunchDaemons/
中的com.sonatype.nexus.plist
后,您必須更改所有權(quán)和訪問權(quán)限:
sudo chown root:wheel /Library/LaunchDaemons/com.sonatype.nexus.plist
sudo chmod 644 /Library/LaunchDaemons/com.sonatype.nexus.plist
考慮設(shè)置一個不同的用戶來運(yùn)行存儲庫管理器僚焦,并調(diào)整nexus啟動腳本中的權(quán)限和RUN_AS_USER
設(shè)置。通過這種設(shè)置曙痘,存儲庫管理器在啟動時作為服務(wù)啟動芳悲。要在配置完成后手動啟動它,您可以使用:
sudo launchctl load /Library/LaunchDaemons/com.sonatype.nexus.plist
2.1.2 配置Nexus的JDK版本
1.訪問azul官網(wǎng)边坤,下載JDK 1.8版本的JDK名扛。根據(jù)自己的操作系統(tǒng)選擇對應(yīng)的JDK版本。
注意:我的電腦是M1芯片茧痒,選擇ARM 64-bit
的版本下載肮韧。如果你的Mac是Inter芯片,那么就選擇x86 64-bit
的版本。
2.雙擊下載的zulu8.74.0.17-ca-jdk8.0.392-macosx_aarch64.dmg安裝弄企,打開如下頁面超燃,雙擊右邊這個箱子圖標(biāo)開始安裝JDK。整個安裝過程不需要做任何設(shè)置保持默認(rèn)即可拘领,一路下一步完成JDK的安裝意乓。
說明:在Mac系統(tǒng)中JDK默認(rèn)安裝在/Library/Java/JavaVirtualMachines/
目錄下。
3.修改nexus-3.61.0-02-mac/nexus-3.61.0-02/bin目錄下的nexus文件约素,將JDK 1.8的安裝目錄配置到INSTALL4J_JAVA_HOME_OVERRIDE
屬性上届良,無需將JDK 1.8配置到操作系統(tǒng)環(huán)境變量PATH中去(因為這里的JDK 1.8只是為了提供給Nexus來使用的)。
# Uncomment the following line to override the JVM search sequence
# INSTALL4J_JAVA_HOME_OVERRIDE=
INSTALL4J_JAVA_HOME_OVERRIDE=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home
4.最后重新在Mac終端輸入以下命令圣猎,即可啟動Nexus服務(wù)士葫,啟動成功后將提示"Starting nexus"信息。
yuanxin@yuanxindeMacBook-Pro bin % ./nexus start
Starting nexus
2.1.3 環(huán)境變量配置
之前我們在操作Nexus服務(wù)的時候送悔,必須要進(jìn)入到nexus-3.61.0-02-mac/nexus-3.61.0-02/bin目錄下才能操作nexus文件慢显,這樣的操作方式相對來說比較麻煩,我們可以通過配置Nexus的環(huán)境變量來簡化Nexus執(zhí)行服務(wù)操作的命令放祟。
1.打開Mac終端鳍怨,輸入以下命令編輯用戶主目錄下的.bash_profile
文件。
vi ~/.bash_profile
注意:如果沒有該文件跪妥,則輸入命令touch ~/.bash_profile
鞋喇,再輸入上面的命令。
2.打開.bash_profile
文件后眉撵,按下i
鍵進(jìn)入到編輯狀態(tài)侦香,然后輸入下面命令來配置環(huán)境變量。
# 創(chuàng)建環(huán)境變量NEXUS_HOME
export NEXUS_HOME=/Users/yuanxin/Documents/ProgramSoftware/nexus-3.61.0-02-mac/nexus-3.61.0-02
# 在環(huán)境變量PATH的值后面追加Nexus的bin目錄路徑
export PATH=$PATH:$NEXUS_HOME/bin
3.按下esc
鍵退出文件的編輯狀態(tài)纽疟,然后再輸入:wq
命令罐韩,保存并退出該文件。
4.最后在Mac終端輸入以下命令使.bash_profile
文件生效污朽。
source ~/.bash_profile
通過以上的Nexus環(huán)境變量的配置散吵,以后在執(zhí)行Nexus服務(wù)操作時,就不需要再進(jìn)入到nexus-3.61.0-02-mac/nexus-3.61.0-02/bin目錄下蟆肆,在Mac終端的任意目錄下都可以使用Nexus命令了矾睦。
2.2 Windows運(yùn)行Nexus服務(wù)
在Windwos系統(tǒng)下有關(guān)Nexus服務(wù)操作的命令總結(jié)見下表:
命令 | 作用 |
---|---|
nexus.exe /start | 后臺啟動Nexus服務(wù) |
nexus.exe /run | 前臺啟動Nexus服務(wù),能看到實時刷新的日志信息炎功,關(guān)掉窗口后就停止了 |
nexus.exe /stop | 停止Nexus服務(wù) |
nexus.exe /restart | 重啟Nexus服務(wù) |
nexus.exe /status | 查看Nexus服務(wù) |
nexus.exe /help | 查看Nexus命令清單 |
nexus.exe /install | 安裝Nexus服務(wù) |
nexus.exe /uninstall | 卸載Nexus服務(wù) |
我們可以在nexus-3.61.0-02/bin目錄下發(fā)現(xiàn)一個名稱位nexus.exe的可執(zhí)行文件枚冗,它是在Windows平臺上運(yùn)行Nexus的啟動腳本,該腳本包含了啟動服務(wù)蛇损、停止服務(wù)赁温、創(chuàng)建服務(wù)和刪除服務(wù)等命令坛怪。
打開命令行窗口,跳轉(zhuǎn)到nexus-3.61.0-02/bin目錄下股囊,執(zhí)行以下命令袜匿,啟動Nexus服務(wù)。
nexus.exe /run
3.訪問Nexus 3.x
1.當(dāng)Nexus啟動完成后毁涉,在瀏覽器地址欄輸入http://localhost:8081或http://127.0.0.1:8081地址來訪問Nexus界面沉帮,如下圖所示。
2.點(diǎn)擊Nexus 3.x首頁右上角的【Sign in】按鈕贫堰,在登錄頁面輸入用戶名和密碼(默認(rèn)用戶名為admin穆壕,默認(rèn)密碼則保存在/sonatype-work/nexus3目錄下的admin.password文件中),點(diǎn)擊【Sign in】按鈕登錄其屏,如下圖所示喇勋。
3.首次點(diǎn)擊【Sign in】使用初始賬號和密碼登錄后,會繼續(xù)彈出對話框要求修改為新的密碼偎行。我這里將新密碼設(shè)置成123456為了方便記憶川背。
4.之后會再彈出一個對話框設(shè)置是否允許匿名瀏覽、下載倉庫中的包蛤袒。這里建議勾選允許熄云。
5.在上述配置匿名訪問窗口中點(diǎn)擊【Next】按鈕后,將進(jìn)入Nexus主頁妙真,登錄成功后缴允,結(jié)果如下圖所示。登錄Nexus后珍德,才可以使用Nexus管理功能练般。在Nexus控制臺左側(cè)的導(dǎo)航菜單含義介紹見下:
- Welcome:表示Nexus歡迎頁面
- Search:用于搜索上傳的依賴
- Browse:用于瀏覽創(chuàng)建的倉庫
- Upload:在該頁面中可以上傳依賴
如下圖所示:
6.在/nexus-3.61.0-02/etc/目錄下有個nexus-default.properties默認(rèn)的配置文件,可以通過該文件修改Nexus的默認(rèn)訪問端口和主機(jī)IP地址等信息锈候。這里我們保持默認(rèn)值不做任何修改薄料。
## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties
##
# Jetty section
application-port=8081
application-host=0.0.0.0
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
nexus-context-path=/
# Nexus section
nexus-edition=nexus-pro-edition
nexus-features=\
nexus-pro-feature
nexus.hazelcast.discovery.isEnabled=true
在nexus-default.properties文件中核心參數(shù)介紹見下:
- application-port:表示IP的端口號,默認(rèn)值為8081泵琳,如果端口號被占用摄职,可以修改成其他的端口號。
- application-host:表示Nexus服務(wù)器的IP地址获列,默認(rèn)值為0.0.0.0琳钉,表示只要是本機(jī)上的IP,就能連上Nexus服務(wù)器蛛倦。為了安全和屏蔽掉其他IP,建議改成localhost默認(rèn)指向的IP啦桌,即127.0.0.1溯壶。
- nexus-context-path:上下文路徑及皂,默認(rèn)值為
/
,類似Java Web項目的虛擬目錄且改,如果添加上下文路徑验烧,需要在訪問地址后面加上下文路徑,即訪問地址變?yōu)閍pplication-host:application-port/nexus-context-path這樣的值又跛。
4.總結(jié)
本文詳細(xì)介紹了 Nexus 3 的下載碍拆、安裝與訪問步驟。首先指出 Nexus 有 2 和 3 兩個版本且并行發(fā)展慨蓝,Nexus 3 優(yōu)勢顯著感混。接著說明其下載地址及安裝過程,涵蓋解壓后目錄介紹礼烈。在啟動服務(wù)方面弧满,分別列出 MacOS 和 Windows 系統(tǒng)下的操作命令,如 MacOS 下多種啟動此熬、停止等命令及 JDK 配置庭呜、環(huán)境變量設(shè)置方法。最后講述訪問 Nexus 3 的方式犀忱,包括登錄步驟及對默認(rèn)配置文件中端口募谎、IP 等關(guān)鍵參數(shù)的說明,為用戶提供全面指導(dǎo)阴汇。