天翼雲安裝nexus3.37.1
有點操蛋,官網網路太慢了!
百度了不少網友的內容,綜合如下
總體是個皮毛,但已經可以用於開發了!
一、下載和安裝
https://download.sonatype.com/nexus/3/nexus-3.37.1-01-unix.tar.gz
太慢了,只好上迅雷。
字尾有點與眾不同,使用unix
上傳到伺服器,解壓....
如果不想改配置,那麼修改下/root/.bash_profile,新增下路徑
之後nexus start即可。
注:nexus不建議使用root執行
這個版本的nexus,功能極其強大,maven庫僅僅是其中一種,還支援常見的yum,npm,docker,apt
二、配置
配置檔案基本都在bin目錄下,
例如 /myapp/nexus/bin,/myapp/nexus/etc
bin這裡包含:nexus,nexus.rc,nexus.vmoptions
etc包含 nexus-default.properties,jetty之類的
一般情況下,我們都會修改,例如:
1.埠(nexus-default.properties)
修改 application-port=9835
2.jdk和使用記憶體
nexus 修改jdk路徑
INSTALL4J_JAVA_HOME="/soft/jdk1.8.0_261"
nexus.vmoptions,修改jvm
-Xms512m
-Xmx512m
-XX:MaxDirectMemorySize=2703m
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
...
其餘略
如果不用於代理之類的,一個小的團隊或者小公司,那麼配置個512m記憶體還是夠用的1
3.其它
nexus.rc 修改執行使用者
run_as_user="root"
三、啟動
nexus start
啟動成功,會提示不建議用root執行。
nexus 的可選命令:
[root@lzf-ty ~]# nexus --help
WARNING: ************************************************************
WARNING: Detected execution as "root" user. This is NOT recommended!
WARNING: ************************************************************
Usage: /soft/nexus/nexus-3.37.1-01/bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}
四、應用
1.登入web管理端
在瀏覽器輸入http://ip:port(此處設定的是9835),
之後點選”sign in“會提出我們輸入密碼(輸入框會提示密碼,密碼儲存在nexus的根的同級目錄下/sonatype-work/nexus3/admin.password),成功後,進入下圖:
之後,/sonatype-work/nexus3/admin.password被刪除掉。
注:這個版本會提示是否允許匿名訪問,一般情況下,公司和個人倉庫不要那麼做。我選擇的是授權訪問。
2.建立使用者
這個比較簡單,建立了一個hcdev,設定一個不算簡單的密碼,並授予nx-admin角色(理論上不需要那麼大,可以 給一個很小的)
注意:使用者和密碼是最傳統的方式,也是最簡單的認證方式。nexus也提供了ldap,realms,ssl
3.建立hosted倉庫(中央倉庫)
注意勾選"maven2" "hosted","allow redeploy"(保證可以把本地編譯結果上傳中央庫)
記住以下幾個資訊:
這個要用於填寫後面的一個setting.xml
4.在配置開發環境的maven setting.xml(預設)
eclise或者idea中使用的是本地安裝的maven)
在cmd下,使用以下命令確認有效的maven配置
mvn help:effective-settings
不要改錯setting.xml
在setting.xml中輸入如下:
id=前面提到的庫的名稱 lzf-ty-snashot
username,password則是對應的使用者。
使用mvn help:effective-settings確認配置,可以發現已經展示出來,不過密碼是貼心地展示為***
5.設定pom專案
<distributionManagement>
<repository>
<id>lzf-ty-snapshot</id>
<name>lzf's maven</name>
<url>http://180.102.19.91:9835/repository/lzf-ty-snapshot/</url>
</repository>
</distributionManagement>
這個id就是setting.xml中設定的id,也就是nexus中倉庫的name.url就是倉庫的url
6.mvn deploy測試
可以在命令列下執行mvn depoly,也可以使用ide整合的maven工具,本質一樣。下圖是cmd下的mvn deploy
7.檢視結果,確認倉庫有效性