python源碼分享網(wǎng)站/深度搜索
說(shuō)到maven私服每個(gè)公司都有,比如我上一篇文章介紹的自定義日志starter,就可以上傳到maven私服供大家使用,每次更新只需deploy一下就行,以下就是本人搭建私服的步驟
使用docker安裝nexus
#拉取鏡像
docker pull sonatype/nexus3:latest#創(chuàng)建掛在目錄,容器數(shù)據(jù)與宿主機(jī)互通,數(shù)據(jù)持久化到宿主機(jī)
#容器重啟數(shù)據(jù)不會(huì)丟失,想想如果是mysql,不掛載的話重啟容器就沒(méi)了
mkdir /var/dockerdata/nexus/nexus-data
mkdir /var/dockerdata/nexus/nexus-logs#授權(quán),因?yàn)閱?dòng)容器時(shí)nexus會(huì)往宿主機(jī)目錄寫數(shù)據(jù)
chmod o+rwx -R /var/dockerdata/nexus/nexus-data
chmod o+rwx -R /var/dockerdata/nexus/nexus-logs#啟動(dòng)容器,建議使用docker-compose來(lái)搞
docker run -d \--name nexus3 \-p 6031:8081 \--restart=always \-e "INSTALL4J_ADD_VM_PARAMS=-Xms128m -Xmx512m -XX:MaxDirectMemorySize=512m -Djava.util.prefs.userRoot=/nexus-data/javaprefs" \-v /var/dockerdata/nexus/nexus-data:/nexus-data \-v /var/dockerdata/nexus/nexus-logs:/nexus-logs \-e TZ=Asia/Shanghai \sonatype/nexus3:latest#nexus3 默認(rèn)啟動(dòng)是2703M內(nèi)存,為了因?yàn)閮?nèi)存不夠?qū)е聠?dòng)失敗或內(nèi)存占用過(guò)多所以指定內(nèi)存
-e "INSTALL4J_ADD_VM_PARAMS=-Xms128m -Xmx512m -XX:MaxDirectMemorySize=512m -Djava.util.prefs.userRoot=/nexus-data/javaprefs"
訪問(wèn)ip:6031看到這個(gè)界面就成功了
登錄重置密碼,會(huì)提示密碼在哪個(gè)目錄的,直接去提示的目錄找就行
分別創(chuàng)建release,snapshot,center,public倉(cāng)庫(kù)。
release:Release 版本是一個(gè)正式發(fā)布的版本,表示該版本已經(jīng)經(jīng)過(guò)測(cè)試和驗(yàn)證,不會(huì)再有頻繁的變化。
snapshot:Snapshot 版本是一種開(kāi)發(fā)中的版本,表示該版本尚未正式發(fā)布,可能會(huì)頻繁發(fā)生變化,每次構(gòu)建時(shí),Maven 會(huì)檢查遠(yuǎn)程倉(cāng)庫(kù)中是否有新的 Snapshot 版本可用。如果有,Maven 會(huì)下載最新的 Snapshot 版本。
center:遠(yuǎn)程倉(cāng)庫(kù),私服不存在就會(huì)通過(guò)這個(gè)倉(cāng)庫(kù)下載,一般都配置阿里的倉(cāng)庫(kù)鏡像
public:公共倉(cāng)庫(kù),nexus上創(chuàng)建時(shí)選混合類型
創(chuàng)建release倉(cāng)庫(kù)
創(chuàng)建snapshot倉(cāng)庫(kù)
創(chuàng)建中央倉(cāng)庫(kù)
創(chuàng)建公共倉(cāng)庫(kù)
創(chuàng)建完了就這樣,其他的可以刪掉了
修改maven的setting.xml,填寫nexus服務(wù)器信息
mirror中的url為nexus私服的公共倉(cāng)庫(kù),id與server中的id要一致
把項(xiàng)目打包上傳到nexus,pom文件配置distributionManagement標(biāo)簽,其中的id要與setting.xml中的id一致
如果想打包release版本,就要把version標(biāo)簽的snapshot去掉
去nexus倉(cāng)庫(kù)看已經(jīng)上傳上去了
引入release版本的話直接在這里復(fù)制坐標(biāo)
在別的工程引入成功
這里能成功引入是因?yàn)樯厦嫖覀冊(cè)趍aven的setting.xml里配置了nexus倉(cāng)庫(kù)的地址,它會(huì)從這個(gè)地址去找依賴,私服找不到就會(huì)根據(jù)ming-center倉(cāng)庫(kù)配置的中央地址去下載。