這篇文章主要介紹“把Nexus作為容器鏡像倉(cāng)庫(kù)的配置過(guò)程”,在日常操作中,相信很多人在把Nexus作為容器鏡像倉(cāng)庫(kù)的配置過(guò)程問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”把Nexus作為容器鏡像倉(cāng)庫(kù)的配置過(guò)程”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
成都創(chuàng)新互聯(lián)長(zhǎng)期為超過(guò)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為景泰企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè),景泰網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。
在過(guò)去的十年中,開(kāi)發(fā)人員經(jīng)歷了打包和部署應(yīng)用程序和底層操作系統(tǒng)的方式的轉(zhuǎn)變。Docker容器和最流行的開(kāi)源容器編排系統(tǒng)Kubernetes(K8)的使用率上升,已經(jīng)改變了軟件供應(yīng)鏈。一方面,開(kāi)發(fā),測(cè)試和生產(chǎn)團(tuán)隊(duì)可以獲得將代碼及其所有依賴(lài)性打包到容器中的優(yōu)勢(shì)。另一方面,隨著每一項(xiàng)新技術(shù)的產(chǎn)生,出現(xiàn)了新的包裝管理系統(tǒng)的復(fù)雜性。
開(kāi)源和容器化重新設(shè)計(jì)了一種高效的價(jià)值流,可以為多種類(lèi)型的生態(tài)系統(tǒng)構(gòu)建多種類(lèi)型的應(yīng)用程序,但是組織如何使用幾種不同的公共來(lái)源(或注冊(cè)表)來(lái)存儲(chǔ),管理和部署其容器化應(yīng)用程序?
Nexus Repository建立在廣泛的企業(yè)存儲(chǔ)功能之上,是適用于所有Docker鏡像和Helm Chart存儲(chǔ)庫(kù)的強(qiáng)大的注冊(cè)表。Nexus Repository由廣泛的用戶社區(qū)支持,部署了超過(guò)500萬(wàn)個(gè)實(shí)例,支持全球1,200多家組織-600多家大型企業(yè)客戶。團(tuán)隊(duì)可以選擇使用Nexus Repository OSS高性能和完全免費(fèi)的容器注冊(cè)表,或者在需要企業(yè)可伸縮性和功能時(shí)選擇Nexus Repository Pro。
與Docker Hub或Helm不同,開(kāi)發(fā)團(tuán)隊(duì)將Nexus Repository作為所有公共注冊(cè)表的中央訪問(wèn)點(diǎn),從而為容器管理提供了更高效,更穩(wěn)定的解決方案。除了在整個(gè)CI/CD構(gòu)建管道中進(jìn)行集成之外,使用完全支持的企業(yè)級(jí)容器注冊(cè)表還具有許多好處。
Nexus存儲(chǔ)庫(kù)通過(guò)Proxy,Hosted和Group存儲(chǔ)庫(kù)支持Docker鏡像和Helm 3存儲(chǔ)庫(kù),從而使用戶可以跨開(kāi)發(fā)團(tuán)隊(duì)使用高級(jí)容器管理功能。
代理存儲(chǔ)庫(kù) -通過(guò)為Docker Hub或任何其他Docker鏡像的遠(yuǎn)程注冊(cè)表設(shè)置代理存儲(chǔ)庫(kù),減少重復(fù)下載并提高開(kāi)發(fā)人員和CI服務(wù)器的下載速度。在本地緩存圖像,以加快上市時(shí)間并確保本地訪問(wèn)控制。
托管存儲(chǔ)庫(kù)-使用Nexus存儲(chǔ)庫(kù)將您自己的容器映像以及第三方映像上載到私有Docker注冊(cè)表。這些注冊(cè)表的細(xì)粒度權(quán)限為開(kāi)發(fā)團(tuán)隊(duì)和組織提供了增強(qiáng)的安全性。
存儲(chǔ)庫(kù)組-允許用戶從組中的所有存儲(chǔ)庫(kù)中提取映像,而無(wú)需在初始設(shè)置后進(jìn)行任何其他客戶端配置。組存儲(chǔ)庫(kù)使您可以使用工具的一個(gè)URL來(lái)訪問(wèn)多個(gè)代理和托管存儲(chǔ)庫(kù)的聚合內(nèi)容。
創(chuàng)建一個(gè)Hosted類(lèi)型的倉(cāng)庫(kù),設(shè)置HTTP模式訪問(wèn),端口為8090。
更新Neuxs Service,添加8090端口。
apiVersion: v1 kind: Service metadata: name: nexus3 namespace: devops labels: k8s-app: nexus3 spec: selector: k8s-app: nexus3 ports: - name: web port: 8081 targetPort: 8081 - name: web2 port: 8083 targetPort: 8083 - name: docker port: 8090 targetPort: 8090
更新Neuxs Ingress,設(shè)置域名為registry.idevops.site
- host: registry.idevops.site http: paths: - path: / backend: serviceName: nexus3 servicePort: 8090
查看Nexus pod日志會(huì)發(fā)現(xiàn)已經(jīng)啟動(dòng)了。
登錄鏡像倉(cāng)庫(kù)
## 默認(rèn)HTTPS會(huì)提示錯(cuò)誤 [root@zeyang-nuc-service ~]# docker login registry.idevops.site Username: admin Password: Error response from daemon: Get https://registry.idevops.site/v2/: dial tcp 192.168.1.230:443: connect: connection refused ## 更新docker配置 [root@zeyang-nuc-service ~]# vim /etc/docker/daemon.json { "exec-opts":["native.cgroupdriver=systemd"], "registry-mirrors": ["https://c9ojlmr5.mirror.aliyuncs.com"], "insecure-registries" : ["192.168.1.200:8088","registry.idevops.site"] } [root@zeyang-nuc-service ~]# systemctl daemon-reload [root@zeyang-nuc-service ~]# systemctl restart docker ## 再次登錄 [root@zeyang-nuc-service ~]# docker login registry.idevops.site Username: admin Password: WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded
測(cè)試上傳鏡像
[root@zeyang-nuc-service ~]# docker tag MySQL:5.7 registry.idevops.site/library/mysql:5.7 [root@zeyang-nuc-service ~]# docker push registry.idevops.site/library/mysql:5.7 The push refers to repository [registry.idevops.site/library/mysql] c187f0dccfe2: Pushed a45abaac81d1: Pushed 71c5f5690aef: Pushed 8df989cb6670: Pushed f358b00d8ce7: Pushed ae39983d39c4: Pushed b55e8d7c5659: Pushed e8fd11b2289c: Pushed e9affce9cbe8: Pushed 316393412e04: Pushed d0f104dc0a1f: Pushed 5.7: digest: sha256:55638620c5a206833217dff4685e0715fb297a8458aa07c5fe5d8730cc6c872f size: 2621
在nexus中驗(yàn)證.
Nexus作為容器注冊(cè)表,通過(guò)用于容器存儲(chǔ)管理和K8s部署的Docker和Helm注冊(cè)表為企業(yè)提供動(dòng)力。隨著DevOps團(tuán)隊(duì)規(guī)模的擴(kuò)大,至關(guān)重要的是要依靠有關(guān)應(yīng)用程序中開(kāi)源組件質(zhì)量的精確報(bào)告。Nexus Lifecycle向開(kāi)發(fā)人員和安全專(zhuān)家提供有關(guān)安全漏洞,許可風(fēng)險(xiǎn)和體系結(jié)構(gòu)質(zhì)量的開(kāi)源組件智能。尋求完全集成的通用容器管理注冊(cè)表以及最精確的組件智能的組織,可以使用Nexus平臺(tái)來(lái)滿足不斷增長(zhǎng)的容器化和開(kāi)源治理的需求。
到此,關(guān)于“把Nexus作為容器鏡像倉(cāng)庫(kù)的配置過(guò)程”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!