Docker私有倉庫Registry部署的實現_docker

來源:腳本之家  責任編輯:小易  

運行私有docker registry,就好比為docker鏡像運行私有git倉庫。在Ubuntu14.04上搭建私有docker registry-Linux的步驟:第一步——安裝必要的軟件1、在docker registry服務器上,應當創建一個擁有sudo權限的用戶(如果可以,在客戶機上也如此)。2、docker registry軟件是一款python應用,因此為了使其能夠運行起來,需要安裝python開發環境以及必要的庫:sudo apt-get updatesudo apt-get -y install build-essential python-dev libevent-dev python-pip liblzma-dev第二步——安裝并配置docker registry1、為了安裝最新的穩定的docker registry發行版,將使用python包管理工具pip:sudo pip install docker-registry2、docker-registry需要配置文件。默認地,pip將該配置文件放置在相當偏僻的地方,因系統中python的安裝位置而異。因此,為了找到該路徑,將嘗試運行registry,以查看相關的輸出:gunicorn --access-logfile - --debug -k gevent -b 0.0.0.0:5000 -w 1 docker_registry.wsgi:application3、由于配置文件不在正確的位置,上述嘗試將會以失敗而告終,并輸出一條包含FileNotFoundError錯誤消息www.anxorj.tw防采集請勿采集本網。

隨著docker使用的鏡像越來越多,就需要有一個保存鏡像的地方,這就是倉庫。目前常用的兩種倉庫:公共倉庫和私有倉庫。最方便的就是使用公共倉庫上傳和下載,下載公共倉庫的鏡像是不需要注冊的,但是上傳時,是需要注冊的。

青云QingCloud日前宣布推出Docker鏡像倉庫服務。該服務包括Docker公有鏡像倉庫和Harbor私有鏡像倉庫,用戶可以根據需求選擇適合的鏡像倉庫方案。Docker鏡像倉庫的推

私有倉庫最常用的就是Registry、Harbor兩種,那接下來詳細介紹如何搭建registry私有倉庫,Harbor將在下一篇博文部署。

分支的意思即為docker中的鏡像)。運行鏡像類似于執行git checkout操作。 更進一步形容,運行私有docker registry,就好比為docker鏡像運行私有git倉庫。 第一步——安裝必

一、部署Registry私有倉庫

ker push rd-server:5000/ubuntu 如何將ubuntu的所有分支都鏡像到自己的私有倉庫? 1.先打TAG,把需要的版本打上標簽,然后進行推送 語句大概是這個樣子的: docker ta

案例描述

如何將ubuntu的所有分支都鏡像到自己的私有倉庫? 1.先打TAG,把需要的版本打上標簽,然后進行推送 語句大概是這個樣子的: docker tag eb601b8965b8 rd-server:5000&

兩臺CentOS7.4,一臺為Docker私有倉庫;另一臺為Docker客戶端,測試使用;

稱為Ubuntu倉庫,其中可能包括14.04,12.04等不同版本的鏡像。 根據存儲的鏡像公開分享與否,Docker倉庫分為公開倉庫(Public)和私有倉庫(Private)兩種形式。 目前,最大的公開

兩臺服務器都需要安裝Docker服務,請參考博文:安裝Docker.v19版本

docker越來越炙手可熱,如果你的團隊已經準備開始使用docker, 那么私有倉庫是必不可少的東西,首先是可以幫助你加快從服務器pull鏡像的速度, 其次也可以幫助你存放私有

1、配置registry私有倉庫

[[email protected] ~]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf <!--docker宿主機開啟路由功能-->[[email protected] ~]# sysctl -p <!--刷新配置-->net.ipv4.ip_forward = 1[[email protected] ~]# vim /etc/docker/daemon.json <!--配置鏡像加速-->{"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"]} <!--添加阿里云加速-->[[email protected] ~]# systemctl reload docker <!--重新啟動docker服務-->[[email protected] ~]# docker search registry <!--查找registry鏡像--><!--registry鏡像可以直接先pull下來,也可以不下載,根據自己情況而定-->[[email protected] ~]# docker run -d -p 5000:5000 --name registry --restart=always -v /opt/registry:/var/lib/registry registry <!--運行registry容器,運行registry服務存儲自己的鏡像--> <!--"--restart=always"參數是指此容器跟隨docker服務啟動而啟動-->[[email protected] ~]# docker ps <!--查看docker運行的容器-->CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESa7773d77b8a3 registry "/entrypoint.sh /etc…" 50 seconds ago Up 46 seconds 0.0.0.0:5000->5000/tcp registry[[email protected] ~]# docker images <!--查看docker所有鏡像-->REPOSITORY TAG IMAGE ID CREATED SIZEregistry latest 708bc6af7e5e 3 months ago 25.8MBtomcat latest 1b6b1fe7261e 5 days ago 647MBhub.c.163.com/public/centos 6.7-tools b2ab0ed558bb 3 years ago 602MB[[email protected] ~]# vim /etc/docker/daemon.json <!--配置docker服務支持registry服務-->{"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"],"insecure-registries":["192.168.100.10:5000"] <!--添加此行-->}[[email protected] ~]# systemctl reload docker <!--重新啟動docker服務-->

2、上傳鏡像到registry私有倉庫

[[email protected] ~]# docker tag hub.c.163.com/public/centos:6.7-tools 192.168.100.10:5000/image/centos:6.7 <!--修改鏡像標簽-->[[email protected] ~]# docker push 192.168.100.10:5000/image/centos:6.7 <!--上傳鏡像到registry私有倉庫-->

二、配置Docker客戶端訪問私有倉庫

<!--客戶端安裝docker服務,配置鏡像加速-->[[email protected] ~]# vim /etc/docker/daemon.json <!--配置docker支持registry服務 -->{"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"],"insecure-registries":["192.168.100.10:5000"] <!--添加此行-->}[[email protected] ~]# systemctl restart docker <!--重新啟動docker服務-->[[email protected] ~]# docker pull 192.168.100.10:5000/image/centos:6.7 <!--客戶端下載私有倉庫中的鏡像-->[[email protected] ~]# docker images <!--查看鏡像是否下載成功-->REPOSITORY TAG IMAGE ID CREATED SIZE192.168.100.10:5000/image/centos 6.7 b2ab0ed558bb 3 years ago 602MB

至此registry私有倉庫已經搭建完成,但是現在存在一個問題,如果這也部署的話企業內部所有人員皆可訪問我們的私有倉庫,為了安全起見,接下來為registry添加一個身份驗證,只有通過了身份驗證才可以上傳或者下載私有倉庫中的鏡像。

三、配置registry加載身份驗證

[[email protected] ~]# yum -y install httpd-tools <!--安裝加密工具httpd-tools-->[[email protected] ~]# mkdir /opt/registry-auth <!--創建存放驗證密鑰目錄-->[[email protected] ~]# htpasswd -Bbn bob [email protected] > /opt/registry-auth/htpasswd <!--配置registry身份驗證數據庫--><!--"-Bbn”參數解釋:B強制密碼加密;b在命令中輸入密碼,不提示輸入密碼;n不更新密鑰文件--><!--刪除此服務器上的所有容器,接下來重新生成一個需要身份驗證的私有倉庫容器-->[[email protected] ~]# docker run -d -p 5000:5000 --restart=always \-v /opt/registry-auth/:/auth/ \-v /opt/registry:/var/lib/registry --name registry-auth -e "REGISTRY_AUTH=htpasswd" \-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" registry <!--重新運行一個支持身份驗證的registry私有鏡像倉庫容器-->[[email protected] ~]# docker tag tomcat:latest 192.168.100.10:5000/image/tomcat:1.0 <!--鏡像修改標簽-->[[email protected] ~]# docker push 192.168.100.10:5000/image/tomcat:1.0 <!--測試不通過身份驗證是否可以往私有倉庫上傳鏡像-->no basic auth credentials<!--提示沒有身份驗證,上傳不了-->[[email protected] ~]# docker login 192.168.100.10:5000 <!--登錄私有鏡像倉庫,通過身份驗證即可上傳-->Username: bob <!--輸入bob-->Password: <!--輸入密碼-->……………… <!--此處省略部分內容-->Login Succeeded <!--已通過身份驗證,此時可以上傳鏡像到私有倉庫-->[[email protected] ~]# docker push 192.168.100.10:5000/image/tomcat:1.0 <!--再次上傳鏡像到私有倉庫-->The push refers to repository [192.168.100.10:5000/image/tomcat]b0ac242ce8d3: Pushed5e71d8e4cd3d: Pushedeb4497d7dab7: Pushedbfbfe00b44fc: Pushedd39111fb2602: Pushed155d997ed77c: Pushed88cfc2fcd059: Pushed760e8d95cf58: Pushed7cc1c2d7e744: Pushed8c02234b8605: Pushed1.0: digest: sha256:55b41e0290d32d6888aee2e9a15f03cc88d2f49d5ad68892c54b9527d0ed181c size: 2421[[email protected] ~]# docker pull 192.168.100.10:5000/image/tomcat:1.0 <!--docker客戶端不通過身份驗證直接下載私有倉庫中的鏡像直接被拒絕-->Error response from daemon: Get http://192.168.100.10:5000/v2/image/tomcat/manifests/1.0: no basic auth credentials[[email protected] ~]# docker login 192.168.100.10:5000 <!--登錄私有倉庫,通過身份驗證-->Username: bob <!--輸入bob-->Password: <!--輸入密碼-->Login Succeeded <!--通過身份驗證-->[[email protected] ~]# docker pull 192.168.100.10:5000/image/tomcat:1.0 <!--下載私有倉庫中的鏡像-->1.0: Pulling from image/tomcat376057ac6fa1: Pull complete5a63a0a859d8: Pull complete496548a8c952: Pull complete2adae3950d4d: Pull complete0a297eafb9ac: Pull complete09a4142c5c9d: Pull complete9e78d9befa39: Pull complete18f492f90b9c: Pull complete7834493ec6cd: Pull complete216b2be21722: Pull completeDigest: sha256:55b41e0290d32d6888aee2e9a15f03cc88d2f49d5ad68892c54b9527d0ed181cStatus: Downloaded newer image for 192.168.100.10:5000/image/tomcat:1.0192.168.100.10:5000/image/tomcat:1.0[[email protected] ~]# docker images <!--查看docker客戶端鏡像-->REPOSITORY TAG IMAGE ID CREATED SIZE192.168.100.10:5000/image/tomcat 1.0 1b6b1fe7261e 5 days ago 647MB192.168.100.10:5000/image/centos 6.7 b2ab0ed558bb 3 years ago 602MB

到此這篇關于Docker私有倉庫Registry部署的實現的文章就介紹到這了,更多相關Docker私有倉庫Registry內容請搜索真格學網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持真格學網!

本文將指導你如何搭建私有docker registry,并確保其安全性。在本教程的最后,你將親身體驗上傳自制的docker鏡像到私有registry,并在不同的機器上安全的將該其拉去下來。本教程不包含如何容器化應用服務的內容,而是旨在引導你去創建registry來存儲你要部署的服務資源。如果你想要docker的入門教程,也許這兒可以幫到你;赨buntu14.04系統的單registry和單客戶機模式,本教程已經通過測試,也許在其他基于debian的發布上仍可以運行。docker概念如果在此之前你尚未接觸過docker,這需要花費你幾分鐘的時間來熟悉docker的關鍵概念。如果你對docker已得心應手,只是想了解如何構建私有registry的話,那么,你可以直接進入下一小節。對于一個新手該如何使用docker,不妨試試這里優秀的docker筆記。docker的核心就是要對應用以及應用的依賴與操作系統分離。為了達到上述目的,docker采用容器與鏡像機制。一個docker鏡像基本上是一個文件系統的模板。當你通過docker run命令運行一個docker鏡像時,該文件系統的一個實例即被激活,并且運行在系統內的docker容器之中。默認的,該容器無法觸及原始鏡像以及docker本身所運行在的主機的文件系統。這是一個獨立的環境。對容器所做的任何改動都將保存在容器本身之內,并不會影響原始的鏡像。如果想保留這些改動,那么,可以通過docker commit命令將容器保存為鏡像。這意味你可以通過原有的容器來衍生出新的容器,而不會對原始容器(或鏡像)造成任何影響。如果你熟悉git,那么你會覺得該流程十分眼熟:從任意的容器上去創建新的分支(這里,分支的意思即為docker中的鏡像)。運行鏡像類似于執行git checkout操作。更進一步形容,運行私有docker registry,就好比為docker鏡像運行私有git倉庫。第一步——安裝必要的軟件在docker registry服務器上,應當創建一個擁有sudo權限的用戶(如果可以,在客戶機上也如此)。docker registry軟件是一款python應用,因此為了使其能夠運行起來,需要安裝python開發環境以及必要的庫:sudo apt-get updatesudo apt-get -y install build-essential python-dev libevent-dev python-pip liblzma-dev第二步——安裝并配置docker registry為了安裝最新的穩定的docker registry發行版(作者撰文時為0.7.3,譯者譯時為0.9.1),我們將使用python包管理工具pip:sudo pip install docker-registrydocker-registry需要配置文件。默認地,pip將該配置文件放置在相當偏僻的地方,因系統中python的安裝位置而異。因此,為了找到該路徑,我們將嘗試運行registry,以查看相關的輸出:gunicorn --access-logfile - --debug -k gevent -b 0.0.0.0:5000 -w 1 docker_registry.wsgi:application由于配置文件不在正確的位置,上述嘗試將會以失敗而告終,并輸出一條包含FileNotFoundError錯誤消息,如下所示[在某些版本中,無下述信內容來自www.anxorj.tw請勿采集。


  • 本文相關:
  • docker搭建私有倉庫(registry與harbor)的實現
  • docker 查詢或獲取私有倉庫(registry)中的鏡像的方法
  • docker 搭建私有倉庫(registry、harbor)
  • 詳解ubuntu docker registry 搭建私有倉庫
  • 詳解docker私有倉庫registry的搭建驗證
  • 使用docker registry鏡像創建私有倉庫的方法
  • docker registry 私有倉庫搭建詳細步驟
  • 構建一個簡單的caas系統
  • docker多階段鏡像構建的實現
  • 一次centos docker網橋模式無法訪問宿主機redis服務的故障排除經
  • 如何刪除docker-register鏡像及none無效鏡像詳解
  • docker-compose 詳解及示例代碼
  • docker容器中crontab無法正常運行解決方案
  • centos7 nexus安裝步驟詳細介紹
  • docker使用的個人學習總結
  • 谷歌技術人員解決docker鏡像體積太大問題的方法
  • centos6使用docker部署redis主從數據庫操作示例
  • 如何在Ubuntu14.04上搭建私有docker registry-Linux
  • 如何在Ubuntu14.04上搭建私有docker registry-Linux
  • docker倉庫的鏡像怎么刪除
  • 如何從docker將image鏡像到私有的registry
  • 拿容器做平臺?QingCloud推出Docker鏡像倉庫
  • 如何在Ubuntu14.04上搭建私有docker registry-Linux
  • 如何從docker將image鏡像到私有的registry
  • 如何從docker將image鏡像到私有的registry
  • 什么是docker鏡像,容器和倉庫
  • docker刪不掉鏡像,怎么辦
  • 怎么配置docker從daocloud拉取鏡像
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全dockerhyper-vvmwarevirtualboxxenserverkvmqemuopenvzxencloudstackopenstack云計算技術云其它首頁服務器云和虛擬化dockerdocker搭建私有倉庫(registry與harbor)的實現docker 查詢或獲取私有倉庫(registry)中的鏡像的方法docker 搭建私有倉庫(registry、harbor)詳解ubuntu docker registry 搭建私有倉庫詳解docker私有倉庫registry的搭建驗證使用docker registry鏡像創建私有倉庫的方法docker registry 私有倉庫搭建詳細步驟構建一個簡單的caas系統docker多階段鏡像構建的實現一次centos docker網橋模式無法訪問宿主機redis服務的故障排除經如何刪除docker-register鏡像及none無效鏡像詳解docker-compose 詳解及示例代碼docker容器中crontab無法正常運行解決方案centos7 nexus安裝步驟詳細介紹docker使用的個人學習總結谷歌技術人員解決docker鏡像體積太大問題的方法centos6使用docker部署redis主從數據庫操作示例docker 給運行中的容器設置端口映docker 清理命令集錦docker獲取鏡像報錯docker: erroubuntu14.04+docker的安裝及使用docker.service啟動失。簎nit ndocker容器如何優雅的終止詳解淺談docker-compose網絡設置之necentos7 安裝docker 解決啟動不了詳解docker國內鏡像拉取和鏡像加docker如何固定ip設置的方法mac下安裝docker教程詳解docker中dockerfile指令創建鏡像jenkins中通過publish over ssh插件將項目docker 實現在線集成開發環境實例詳解docker 清理命令集錦docker倉庫常用命令詳解docker容器無法stop的解決辦法淺析docker-compose部署mysql無法訪問的問docker在ubuntu14.04下的安裝步驟docker下搭建一個java tomcat運行環境的方
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.anxorj.tw All Rights Reserved
    陕西快乐10分下载