nexus3.14.0-04私服構建

前言

      項目開發時,通常採用Maven來進行項目構建,管理,jar包下載,項目組開發人員開發時,只要在項目的pom.xml文件中,添加以下pom.xml信息從公共的庫中下載相關的Jar包以及依賴Jar包,但有時候公共的庫不是那麼穩定並且下載速度每每很慢,一個團隊一塊兒開發項目時,若是每一個組員都去下載一遍全部依賴的Jar包,實際上是一件很麻煩的事情,因此這時候就有必要搭建一個Maven的私庫了,這樣若是再添加其餘的構件時,會先在Maven私庫下載好,之後纔會下載到本地。之後,若是發現私服已經存在某一jar包,則會直接從私服下載,若是沒有再去網絡上下載,能大大的提升效率,所以頗有必要搭建maven私服。java

Maven私庫安裝部署

1.平臺版本說明

centos 7.5linux

nexus-3.14.0-04web

JDK 8vim

2.環境安裝:安裝nuxus maven私庫以前先要安裝好JDK、maven等必要環境

配置環境變量:centos

# vim /etc/profilebash

.....網絡

//java的環境變量設置app

export     JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdkjvm

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarmaven

export PATH=$PATH:$JAVA_HOME/bin

#//maven的環境變量設置

export MAVEN_HOME=/usrl/local/mevan

export PATH=$PATH:$MAVEN_HOME/bin

3.Nexus Maven私庫安裝

nexus maven下載,下載地址:https://www.sonatype.com/download-oss-sonatype,我下載的是nexus-3.14.0-04-unix.tar.gz

1)安裝:linux版本無需安裝

直接解壓便可 tar -zxf nexus-3.14.0-04-unix.tar.gz

 1.1設置系統內核,這個是根據日誌報警本身設置的

# vi /etc/security/limits.conf

添加下面參數

nexus    soft    nproc 2047

nexus    hard   nproc 1638423

nexus    soft       nofile 1024

nexus    hard     nofile 65536

1.2.建立nexus運行帳號

#useradd nexus

1.3.修改bash_profile文件

$vi ~/.bash_profile

NEXUS_HOME=/mysolf/nexus3/nexus-3.14.0-04

export PATH=$PATH:$NEXUS_HOME/bin

$source ~/.bash_profile

#nexus

提示:

1.4.設置運行用戶

$vim /mysolf/nexus3/nexus-3.14.0-04/bin/nexus.rc  #這裏是控制啓動用戶的

#run_as_user=""   #默認是root用戶啓動,固然你能夠去掉註釋如:

run_as_user="nexus" #就變成nexus用戶啓動了

再次運行nexus再也不報錯

$nexus

2)運行:

進入bin目錄下,運行./nexus start,啓動服務

$nexus start

(可選)的配置:

# vim /usr/local/nexus/bin/nexus.vmoptions   #這個文件有一些啓動參數,這裏修改佔用內存,存儲,日誌的位置等

-Xms1200M -Xmx1200M -XX:MaxDirectMemorySize=2G -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+LogVMOutput -XX:LogFile=../sonatype-work/nexus3/log/jvm.log -XX:-OmitStackTraceInFastThrow -Djava.net.preferIPv4Stack=true
-Dkaraf.home=. -Dkaraf.base=. -Dkaraf.etc=etc/karaf -Djava.util.logging.config.file=etc/karaf/java.util.logging.properties -Dkaraf.data=../sonatype-work/nexus3 -Djava.io.tmpdir=../sonatype-work/nexus3/tmp -Dkaraf.startLocalConsole=false

 

# vim /usr/local/nexus/etc/nexus-default.properties   #修改端口啊監聽地址在這個配置文件中

## 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

訪問私服

nexus3.X的默認端口是:8081

nexus3.X的默認帳號是:admin

nexus3.X的默認密碼是:admin123

nexus3.X搭建的maven私服的本地訪問地址是:http://私服的ip:8081**

例如個人就是:http://192.168.176.181:8081/

能夠點擊上面的「設置」圖標,在「設置」裏能夠添加用戶、角色,對接LDAP等的設置,以下:

注意下面幾點說明:

1.component name的一些說明:

    1)maven-central:maven中央庫,默認從https://repo1.maven.org/maven2/拉取jar

    2)maven-releases:私庫發行版jar

    3)maven-snapshots:私庫快照(調試版本)jar

    4)maven-public:倉庫分組,把上面三個倉庫組合在一塊兒對外提供服務,在本地maven基礎配置settings.xml中使用。

2.Nexus默認的倉庫類型有如下四種:

    1)group(倉庫組類型):又叫組倉庫,用於方便開發人員本身設定的倉庫;

    2)hosted(宿主類型):內部項目的發佈倉庫(內部開發人員,發佈上去存放的倉庫);

    3)proxy(代理類型):從遠程中央倉庫中尋找數據的倉庫(能夠點擊對應的倉庫的Configuration頁簽下Remote Storage Location屬性的值即被代理的遠程倉庫的路徑);

    4)virtual(虛擬類型):虛擬倉庫(這個基本用不到,重點關注上面三個倉庫的使用);

3.Policy(策略):表示該倉庫爲發佈(Release)版本倉庫仍是快照(Snapshot)版本倉庫;

4.Public Repositories下的倉庫

   1)3rd party: 沒法從公共倉庫得到的第三方發佈版本的構件倉庫,即第三方依賴的倉庫,這個數據一般是由內部人員自行下載以後發佈上去;

   2)Apache Snapshots: 用了代理ApacheMaven倉庫快照版本的構件倉庫

   3)Central: 用來代理maven中央倉庫中發佈版本構件的倉庫

   4)Central M1 shadow: 用於提供中央倉庫中M1格式的發佈版本的構件鏡像倉庫

   5)Codehaus Snapshots: 用來代理CodehausMaven 倉庫的快照版本構件的倉庫

   6)Releases: 內部的模塊中release模塊的發佈倉庫,用來部署管理內部的發佈版本構件的宿主類型倉庫;release是發佈版本;

   7)Snapshots:發佈內部的SNAPSHOT模塊的倉庫,用來部署管理內部的快照版本構件的宿主類型倉庫;snapshots是快照版本,也就是不穩定版本

因此自定義構建的倉庫組代理倉庫的順序爲:Releases,Snapshots,3rd party,Central。也能夠使用oschina放到Central前面,下載包會更快。

5.Nexus默認的端口是8081,能夠在etc/nexus-default.properties配置中修改。

6.Nexus默認的用戶名密碼是admin/admin123

7.當遇到奇怪問題時,重啓nexus,重啓後web界面要1分鐘左右後才能訪問。

8.Nexus的工做目錄是sonatype-work(路徑通常在nexus同級目錄下)

相關文章
相關標籤/搜索