最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker安裝Maven私服Nexus3的實(shí)現(xiàn)步驟

 更新時(shí)間:2025年12月14日 09:17:53   作者:栗箏i  
本文主要介紹了Docker安裝Maven私服Nexus3的實(shí)現(xiàn)步驟,可以幫助開(kāi)發(fā)者搭建高效的依賴(lài)管理和分發(fā)環(huán)境,具有一定的參考價(jià)值,感興趣的可以了解一下

在現(xiàn)代軟件開(kāi)發(fā)中,私有倉(cāng)庫(kù)是企業(yè)管理和分發(fā)內(nèi)部依賴(lài)的重要工具,能夠提高開(kāi)發(fā)效率、加強(qiáng)依賴(lài)管理并確保構(gòu)建的穩(wěn)定性。Nexus Repository Manager 作為市場(chǎng)上常見(jiàn)的私服解決方案,不僅支持 Maven,還支持 npm、PyPI 等多種格式,為團(tuán)隊(duì)提供了統(tǒng)一的制品管理平臺(tái)。

本文將介紹如何使用 Docker 快速部署 Maven 私服 Nexus3,幫助開(kāi)發(fā)者搭建高效的依賴(lài)管理和分發(fā)環(huán)境,同時(shí)減少環(huán)境配置的復(fù)雜性和維護(hù)成本。通過(guò) Docker 部署,您可以輕松實(shí)現(xiàn)版本化控制、靈活配置以及跨平臺(tái)的便捷使用,是中小型團(tuán)隊(duì)和企業(yè)的理想選擇。

1、背景知識(shí)

在研發(fā)的過(guò)程中,很多企業(yè)都會(huì)針對(duì)自身業(yè)務(wù)特點(diǎn)來(lái)定制研發(fā)一些工具類(lèi)庫(kù),但是這些工具類(lèi)庫(kù)又不會(huì)對(duì)外公開(kāi),那如何在組織內(nèi)部共享這些類(lèi)庫(kù)呢?一種很好的方式就是在公司內(nèi)部搭建一套 Maven 私服倉(cāng)庫(kù)。

搭建 Maven 私服倉(cāng)庫(kù)可以提高項(xiàng)目構(gòu)建和部署的效率、穩(wěn)定性和安全性,同時(shí)方便管理內(nèi)部開(kāi)發(fā)的組件和私有庫(kù),比較適用于企業(yè)內(nèi)部或者特定場(chǎng)景下的需求。

2、環(huán)境搭建

2.1、步驟一:下載 Nexus3 鏡像

在服務(wù)器命令行輸入如下命令,下載 Nexus3 鏡像(視網(wǎng)絡(luò)情況,可能需要耐心等待一會(huì)兒):

$ docker pull sonatype/nexus3

2.2、步驟二:查看 Nexus3 鏡像

在服務(wù)器命令行輸入如下命令,查看下載的 Nexus3 鏡像。

$ docker images

可以看到,已經(jīng)成功下載 Nexus3 鏡像

2.3、步驟三:創(chuàng)建 Nexus3 掛載文件夾

在服務(wù)器命令行輸入如下命令,創(chuàng)建 Nexus 的掛載文件夾:

$ mkdir /usr/local/nexus-data && chown -R 200 /usr/local/nexus-data

2.4、步驟四:?jiǎn)?dòng) Nexus3 容器

在服務(wù)器命令行輸入如下命令,啟動(dòng) Nexus3 容器:

$ docker run -d -p 8081:8081 --name nexus -v /usr/local/nexus-data:/nexus-data --restart=always sonatype/nexus3

可以看到,在上述啟動(dòng)命令中,我們將 Nexus3 容器的 /nexus-data 目錄映射到了宿主機(jī)的 /usr/local/nexus-data 目錄。此時(shí) Nexus3 容器運(yùn)行過(guò)程中,在 /nexus-data 目錄產(chǎn)生的文件和日志都會(huì)在宿主機(jī)的 /usr/local/nexus-data 目錄中查看到。

Ps:Nexus3 默認(rèn)啟動(dòng)需要至少 2G 內(nèi)存,所以一些環(huán)境下為了避免占用過(guò)多內(nèi),可以采用下面參數(shù)限制其內(nèi)存:

$ docker run -d -e "INSTALL4J_ADD_VM_PARAMS=-Xms128m -Xmx512m -XX:MaxDirectMemorySize=512m -Djava.util.prefs.userRoot=/nexus-data/javaprefs" -p 8081:8081 --name nexus -v /usr/local/nexus-data:/nexus-data sonatype/nexus3

2.5、步驟五:查看 Nexus3 容器啟動(dòng)狀態(tài)

在服務(wù)器命令行輸入如下命令,查看 Nexus3 容器啟動(dòng)狀態(tài):

$ docker ps

可以看到,Nexus3 容器啟動(dòng)成功,監(jiān)聽(tīng)了 8081 端口。

3、環(huán)境配置

搭建完 Nexus3 環(huán)境后,我們還需要對(duì)其進(jìn)行配置,具體配置的步驟如下所示。

3.1、步驟六:打開(kāi) Nexus3 頁(yè)面

Nexus3 容器啟動(dòng)時(shí)監(jiān)聽(tīng)的端口和宿主機(jī)端口都是 8081,所以,我們?cè)跒g覽器地址欄輸入 http://宿主機(jī)IP地址:8081 打開(kāi) Nexus3 頁(yè)面:

3.2、步驟七:登陸 Nexus3 用戶(hù)

點(diǎn)擊 Nexus3 右上角的登錄(Sign in),點(diǎn)擊后會(huì)彈出如下圖所示的提示框:

對(duì)于第一次登陸,初始密碼的存放位置為 /nexus-data/admin.password,因?yàn)槲覀冊(cè)趩?dòng) Nexus3 容器時(shí),將 Nexus3 容器的 /nexus-data 目錄映射到了宿主機(jī)的 /usr/local/nexus-data 目錄,所以,我們?cè)谒拗鳈C(jī)的 /usr/local/nexus-data 目錄中也能夠查詢(xún)到 admin.password 文件。

$ cat /usr/local/nexus-data/admin.password 

此時(shí),我們就查看到登錄 Nexus3 的 admin 賬號(hào)的密碼為 13250a0a-1c02-498a-b15a-0a7aabad1add

將 admin 賬號(hào)和對(duì)應(yīng)的密碼輸入到提示框中,即可登錄 Nexus3。

Ps:首次登錄后會(huì)自動(dòng)彈出完成必要設(shè)置的提示框,點(diǎn)擊 Next 按鈕,設(shè)自行置新密碼,用于后續(xù)登錄 Nexus。之后點(diǎn)擊 Next 按鈕,選擇 Enable anonymous access 再次點(diǎn)擊 Next 按鈕后,點(diǎn)擊 Finish 按鈕,即可完成設(shè)置。

3.3、步驟八:配置阿里云代理倉(cāng)庫(kù)

如下圖所示,Nexus 默認(rèn)使用的遠(yuǎn)程倉(cāng)庫(kù)為 maven-central,從這個(gè)遠(yuǎn)程倉(cāng)庫(kù)下載依賴(lài)很慢,經(jīng)常連不上。

鼠標(biāo)單機(jī) maven-central 倉(cāng)庫(kù),查看 maven-central 倉(cāng)庫(kù)配置的遠(yuǎn)程鏈接,如下圖所示:

可以看到,maven-central倉(cāng)庫(kù)配置的遠(yuǎn)程鏈接為 https://repo1.maven.org/maven2/,從這個(gè)遠(yuǎn)程倉(cāng)庫(kù)下載依賴(lài)很慢,經(jīng)常連不上,所有我們需要配置阿里云遠(yuǎn)程代理倉(cāng)庫(kù)。

這里我們回到 Repositories 頁(yè)面,點(diǎn)擊 Create repository 按鈕:

點(diǎn)擊后進(jìn)入選擇倉(cāng)庫(kù)類(lèi)型的頁(yè)面,這里我們選擇 maven2(proxy) 類(lèi)型。

點(diǎn)擊選則 maven2(proxy) 類(lèi)型后,進(jìn)入配置遠(yuǎn)程代理倉(cāng)庫(kù)的頁(yè)面:

其中,每個(gè)配置項(xiàng)如下所示。

  • Name:aliyun-central
  • Version policy:Release
  • Layout policy:Strict
  • Remote storage:http://maven.aliyun.com/nexus/content/groups/public

接下來(lái),拖動(dòng)頁(yè)面右側(cè)的滾動(dòng)條,滑到最下面,點(diǎn)擊 Create repository 按鈕

點(diǎn)擊 Create repository 按鈕后,就可以在 Repositories 列表中看到新配置的阿里云代理倉(cāng)庫(kù)了

并且 Status 顯示的是 Online - Ready to connect,說(shuō)明阿里云遠(yuǎn)程倉(cāng)庫(kù)配置成功。

3.4、步驟九:配置倉(cāng)庫(kù)組

接下來(lái),需要將 aliyun-central 配置到倉(cāng)庫(kù)組,并且將 aliyun-central 排在 maven-central 上面。

Repositories 列表中,點(diǎn)擊 maven-public

點(diǎn)擊進(jìn)入頁(yè)面后,下拉頁(yè)面右側(cè)的滾動(dòng)條,找到如圖所示的配置

aliyun-central 移動(dòng)到右側(cè),并排在最上面后,點(diǎn)擊 Save 按鈕保存配置。

3.5、步驟十:創(chuàng)建用戶(hù)

接下來(lái),創(chuàng)建一個(gè)用于上傳 Jar 包到倉(cāng)庫(kù)的用戶(hù),具體步驟如下所示。

點(diǎn)擊 Security 菜單下的 Users 菜單,再之后點(diǎn)擊 Create local user 按鈕

隨后,按照下圖所示設(shè)置用戶(hù)的基本信息

這里,自行記錄用戶(hù)的密碼,將 Status 設(shè)置為 Active 來(lái)啟用賬戶(hù),并設(shè)置賬號(hào)的角色為 nx-admin,配置好之后,點(diǎn)擊底部的 Create local user 按鈕即可。

點(diǎn)擊后在 Security 菜單下的 Users 菜單的用戶(hù)列表中,可以查看到新創(chuàng)建的本地用戶(hù)

至此,Nexus3 配置完畢。

4、配置本地 Maven 倉(cāng)庫(kù)

配置完 Nexus 后,接下來(lái),還需要對(duì)本地的 Maven 倉(cāng)庫(kù)進(jìn)行配置,主要就是對(duì) Maven 的 settings.xml 文件進(jìn)行配置

4.1、步驟十一:復(fù)制 settings 文件

復(fù)制 setting.xml 文件為 setting-lizhengi.xml 文件

4.2、步驟十二:配置 servers 節(jié)點(diǎn)

在 settings-lizhengi.xml 文件中,找到 servers 節(jié)點(diǎn),在 servers 節(jié)點(diǎn)中,配置在步驟十中創(chuàng)建的用戶(hù)

<server>
    <id>binghe</id>
    <username>lizhengi</username>
    <password>myPassword</password>
</server>

4.3、步驟十三:配置 mirrors 節(jié)點(diǎn)

在 settings-lizhengi.xml 文件中,找到 mirrors 節(jié)點(diǎn),在 mirrors 節(jié)點(diǎn)中,配置倉(cāng)庫(kù)地址

<mirrors>
    <mirror>
        <id>lizhengi-nexus</id>
        <name>Lizhengi Nexus3</name>
        <url>http://tencentcloud:8081/repository/maven-public</url>
        <mirrorOf>*</mirrorOf>
    </mirror>
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
</mirrors>

4.4、步驟十四:配置profiles節(jié)點(diǎn)

在 settings-lizhengi.xml 文件中,找到 profiles 節(jié)點(diǎn),在 profiles 節(jié)點(diǎn)中,配置倉(cāng)庫(kù)信息:

<profile>
    <id>maven-public</id>
    <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
    </activation>
    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
    </properties>
    <repositories>
        <repository>
            <id>nexus-public</id>
            <url>http://tencentcloud:8081/repository/maven-public/</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </snapshots>
        </repository>
    </repositories>
</profile>

至此,Maven私服倉(cāng)庫(kù)搭建完畢,并且本地Maven也已經(jīng)配置完畢。

后續(xù)使用 Maven 構(gòu)建項(xiàng)目時(shí),指定使用 settings-lizhengi.xml 文件即可將依賴(lài)的 Jar 文件和生成的 Jar 文件上傳到 Maven 私服倉(cāng)庫(kù),如果使用 IDEA 編譯項(xiàng)目,也需要在 IDEA 中,將 Maven 的配置文件指定為 settings-lizhengi.xml。

5、配置項(xiàng)目 pom.xml 文件

搭建完 Maven 私服倉(cāng)庫(kù),配置好本地 Maven 倉(cāng)庫(kù)后,還需要在項(xiàng)目的 pom.xml 文件中進(jìn)行相應(yīng)的配置,具體如下所示:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
                <encoding>${project.build.sourceEncoding}</encoding>
            </configuration>
        </plugin>
        <!--發(fā)布代碼Jar插件 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <version>2.8.2</version>
        </plugin>
        <!--發(fā)布源碼插件 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>3.0.0</version>
            <executions>
                <execution>
                    <phase>install</phase>
                    <goals>
                        <goal>jar-no-fork</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
 
<distributionManagement>
    <repository>
        <!--這里的id與settings.xml中的servers節(jié)點(diǎn)配置的用戶(hù)ID一直,這樣才能使用配置的用戶(hù)去上傳到maven私有倉(cāng)庫(kù) -->
        <!--此倉(cāng)庫(kù)對(duì)應(yīng)的為RELEASE版本的jar-->
        <id>lizhengi</id>
        <url>http://tencentcloud:8081/repository/maven-releases/</url>
    </repository>
    <snapshotRepository>
        <!--這里的id與settings.xml中的servers節(jié)點(diǎn)配置的用戶(hù)ID一直,這樣才能使用配置的用戶(hù)去上傳到maven私有倉(cāng)庫(kù) -->
        <!--此倉(cāng)庫(kù)對(duì)應(yīng)的為SNAPSHOT版本的jar-->
        <id>lizhengi</id>
        <url>http://tencentcloud:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

到此這篇關(guān)于Docker安裝Maven私服Nexus3的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Docker安裝Maven私服Nexus3內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • windows10下安裝docker且使用wsl2安裝雙系統(tǒng)并構(gòu)建最小jre鏡像和應(yīng)用鏡像

    windows10下安裝docker且使用wsl2安裝雙系統(tǒng)并構(gòu)建最小jre鏡像和應(yīng)用鏡像

    這篇文章主要給大家介紹了windows10下安裝docker且使用wsl2安裝雙系統(tǒng)并構(gòu)建最小jre鏡像和應(yīng)用鏡像的流程步驟,文中有詳細(xì)的圖文介紹,需要的朋友可以參考下
    2023-08-08
  • Docker進(jìn)入容器運(yùn)行命令的詳細(xì)指南

    Docker進(jìn)入容器運(yùn)行命令的詳細(xì)指南

    Docker 是一個(gè)開(kāi)源的容器化平臺(tái),廣泛應(yīng)用于開(kāi)發(fā)和生產(chǎn)環(huán)境中,它允許開(kāi)發(fā)者打包應(yīng)用程序及其依賴(lài)項(xiàng)到容器中,本文將詳細(xì)介紹如何通過(guò) Docker 進(jìn)入容器內(nèi)部運(yùn)行命令,探討不同的場(chǎng)景和工具,并提供相關(guān)代碼示例,需要的朋友可以參考下
    2024-11-11
  • 使用docker部署django技術(shù)棧項(xiàng)目的方法步驟

    使用docker部署django技術(shù)棧項(xiàng)目的方法步驟

    這篇文章主要介紹了使用docker部署django技術(shù)棧項(xiàng)目的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Docker 配置固定IP及橋接的實(shí)現(xiàn)方法

    Docker 配置固定IP及橋接的實(shí)現(xiàn)方法

    這篇文章主要介紹了Docker 配置固定IP和橋接的實(shí)現(xiàn)方法的相關(guān)資料,這里詳細(xì)介紹了Docker 的四種網(wǎng)絡(luò)模式及如何實(shí)現(xiàn)橋接的案例,需要的朋友可以參考下
    2016-10-10
  • docker安裝OpenWebUI報(bào)錯(cuò)500的原因及解決方法

    docker安裝OpenWebUI報(bào)錯(cuò)500的原因及解決方法

    Open?WebUI是一個(gè)可擴(kuò)展、功能豐富且用戶(hù)友好的自托管WebUI,旨在完全離線(xiàn)操作,這篇文章主要介紹了docker安裝OpenWebUI報(bào)錯(cuò)500的原因及解決方法,需要的朋友可以參考下
    2025-07-07
  • Docker安裝Jenkins-2.249.3-1.1的詳細(xì)過(guò)程

    Docker安裝Jenkins-2.249.3-1.1的詳細(xì)過(guò)程

    這篇文章主要介紹了Docker安裝Jenkins-2.249.3-1.1,通過(guò)編寫(xiě)docke安裝腳本來(lái)實(shí)現(xiàn)安裝目的,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • docker打包前端鏡像的超詳細(xì)步驟

    docker打包前端鏡像的超詳細(xì)步驟

    要打包前端項(xiàng)目可以使用 Docker 容器技術(shù),下面這篇文章主要給大家介紹了關(guān)于docker打包前端鏡像的超詳細(xì)步驟,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • dockerfile報(bào)錯(cuò)“/bin/sh -c yum -y install“問(wèn)題及解決

    dockerfile報(bào)錯(cuò)“/bin/sh -c yum -y install“問(wèn)

    文章主要討論了解決Docker容器安裝vim時(shí)出現(xiàn)錯(cuò)誤的問(wèn)題,指出是容器版本不兼容導(dǎo)致,建議使用Centos 7版本的容器,提供了一種解決方案,并鼓勵(lì)讀者參考此經(jīng)驗(yàn)
    2026-05-05
  • Docker之自定義網(wǎng)絡(luò)實(shí)現(xiàn)

    Docker之自定義網(wǎng)絡(luò)實(shí)現(xiàn)

    大家好,本篇文章主要講的是Docker之自定義網(wǎng)絡(luò)實(shí)現(xiàn),感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下,方便下次瀏覽
    2021-12-12
  • docker 查看jvm內(nèi)存占用方式

    docker 查看jvm內(nèi)存占用方式

    這篇文章主要介紹了docker 查看jvm內(nèi)存占用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03

最新評(píng)論

沂南县| 百色市| 牙克石市| 商水县| 晋州市| 普陀区| 阳谷县| 长岭县| 高台县| 禹城市| 从化市| 司法| 镇平县| 城步| 农安县| 海原县| 邹平县| 花垣县| 察哈| 收藏| 舟山市| 辰溪县| 炉霍县| 买车| 特克斯县| 松阳县| 嘉义市| 宜君县| 兴宁市| 许昌市| 利津县| 三都| 蓬安县| 青神县| 威海市| 唐海县| 阳西县| 安新县| 湖南省| 秦安县| 绥芬河市|