019.nexus搭建docker鏡像倉庫/maven倉庫

1、安裝docker CE

  參考docker dochtml

  https://docs.docker.com/install/linux/docker-ce/centos/linux

 

2、docker啓動nexus3

# 1.登陸docker hub docker login # 2.拉取nexus3鏡像 docker pull sonatype/nexus3 # 3.查看鏡像 docker images # 4.啓動nexus3 docker run -id --name=nexus3 \ --privileged=true \ --restart=always \ -p 8081:8081 \ -p 10000:10000 \ -p 10010:10010 \ -p 10020:10020 \ -v /opt/nexus3/nexus-data:/var/nexus-data \ 836c51250912 # 將容器的10000 10010 10020端口映射到host機, 這些端口做爲後續nexus3建立的docker鏡像倉庫支持docker訪問的端口 # 5.查看nexus3日誌 docker logs -f nexus3

 

3、啓動nexus失敗的問題

   若是服務器內存過小致使nexus沒法啓動,能夠啓用swapdocker

   http://www.javashuo.com/article/p-zycrxzwn-bh.htmlsegmentfault

   http://www.javashuo.com/article/p-svdpnzbf-m.htmlcentos

   http://www.javashuo.com/article/p-fevhudag-cd.html服務器

 

  

Part one: nexus搭建docker鏡像倉庫

1、nexus3建立docker鏡像倉庫及用戶、角色

  • 使用默認管理帳號密碼登陸nexus3管理界面

  https://www.jianshu.com/p/77af52a75ad8 maven

  http://www.javashuo.com/article/p-tyltmtnt-hw.htmlui

 

  登陸地址: http://服務器ip:8081url

 

  • 三種類型的docker鏡像倉庫

  hosted、proxy、groupspa

  

  設置能夠被docker-cli直接訪問的端口(啓動nexus容器的時候須要將這些端口暴露到host機); 

  

 

 

  • 設置角色、建立用戶

   建立角色、設置角色的權限;

  

 

  角色能夠繼承

  

 

  

 

  建立用戶,爲用戶分配角色;

  

 

 

2、經過docker-cli使用鏡像倉庫

  • 設置docker-daemon的 insecure-registries

 

# 1.查看docker-daemon配置文件 systemctl status docker.service # 2.修改配置文件 vi /usr/lib/systemd/system/docker.service # ExecStart=/usr/bin/dockerd --insecure-registry 47.116.91.161:10000 --insecure-registry 47.116.91.161:10010 --insecure-registry 47.116.91.161:10020   -H fd:// --containerd=/run/containerd/containerd.sock


# 3.重啓docker-daemon systemctl daemon-reload # 4.重啓docker systemctl restart docker

 

  •  登陸到nexus3搭建的docker鏡像倉庫

  docker login xxx:xxx:xxx:xxx:10010

 

 

 

Part Two: nexus搭建maven倉庫

http://www.javashuo.com/article/p-oqaurbhj-hz.html

https://blog.csdn.net/ZZY1078689276/article/details/78953011

1、配置mavensettings.xml

安裝完成的nexus已經建立了4個maven倉庫

 

 ## 私服的id須要與nexus倉庫id保持一致 <server>
        <id>maven-releases</id>
        <username>admin</username>
        <password>admin123</password>
    </server>

 

 

2、修改項目pom.xml

## repository的id與ssettings.xml server id 一致 <distributionManagement>
        <repository>
            <id>maven-releases</id>
            <name>Nexus-Release-Repository</name>
            <url>http://xx.xxx.xx.xxx:8081/repository/maven-releases/</url>
        </repository>
    </distributionManagement>

 

3、maven build... > goals: deploy

 jar包便可安裝到本地倉庫即上傳到私服

 

4、SNAPSHOT版本

  • release正式倉庫則是用來保存穩定的發行版本。

    編譯打包時若是發現本地已經存在該版本的模塊,則不會再去私服下載。

  • snapshot快照倉庫用於保存開發過程當中的不穩定版本,

    定義一個組件/模塊爲快照版本,只須要在pom文件中在該模塊的版本號後加上-SNAPSHOT便可(注意這裏必須是大寫);

    mvn deploy時會自動發佈到快照版本庫中;

    其餘工程使用該快照版本的模塊如1.0-SNAPSHOT,即便本地倉庫存在該快照版本模塊1.0-SNAPSHOT,maven仍會自動從私服下載最新的快照版本。

    實際上發佈到快照倉庫後,Version爲1.0-發佈時間。

 

相關文章
相關標籤/搜索