docker-建立私有registry(一)
所以我們在利用docker開發構建容器服務時,我們希望能夠建立自己的私有registry,上傳映象值我們的私有registry中心,然後在其他物理機上部署的時候,可以快速的pull,然後實現大規模的分發以及部署,提高效率。
下面將會說一下如何通過registry容器實現這個。
開源的基於swoole擴充套件實現的框架https://github.com/bingcool/swoolefy
環境:centos7.0, docker1.13.1版本
docker1.12版本以後,docker的可執行檔案從/usr/bin/docker變成了/ussr/bin/dockerd,每一個版本在不同的環境下,dockerd的daemon都是不同的配置,具體的要根據docker官網的指導進行配置。我們在網上可以看到很多關於如何配置docker的daemon啟動引數教程,以及一些出現的問題,其實大部分都是講的比較亂的,或者不根據自己的實際系統和docker版本去確定如何配置的,因為不同的系統版本和docker版本具體的opts的選項是不同的,這個配置的檔案的位置也是不一樣的,如果沒清楚整個區別,就跟著網上的改來改去,最後配置還是沒能生效。
(1)無認證的registry
在環境中,dockerd的配置檔案在/etc/docker/daemon.json中,如果沒有該檔案,可以手動建立。
第一步:pull docker官方的registry的第二個版本,docker1.6版本以上支援registry2
docker pull registry:2.6.0
或者docker pull registry 不指定版本,表示latest版本
第二步:配置daemon.json,去掉docker預設的https的訪問vim /etc/docker/daemon.json
裡面的內容是一個json物件,加上一項insecure-registries,地址自己更改:
{
"insecure-registries":["192.168.1.78:5000"]
}
然後重啟docker,執行
systemctl daemon-reload docker
systemctl restart docker
第三步
docker run -d --name registry -p 5000:5000 --restart=always -v /opt/registry/:/var/lib/registry/ registry:2.6.0
上傳到私有映象的映象到時是預設存放在容器的/var/lib/registry/,為了防止刪除registry,上傳的映象也被刪除,所以啟用一個volume,將上傳的映象持久化儲存在我們物理機上,這裡儲存位置是/opt/registry/
第四步:測試是否啟動容器
curl http://192.168.1.78:5000/v2/_catalog
如果返回{"repositories":[]},代表啟動成功了!
將nginx這個映象重新命名tag
docker tag nginx 192.168.1.78:5000/mynginx
這裡需要注意的是重新命名的tag必須帶有建立192.168.1.78:5000/這個字首,後面的mynginx是新映象名。
然後開始進行push到我們建立的私有registry
docker pull 192.168.1.78:5000/mynginx
再通過執行
curl http://192.168.1.78:5000/v2/_catalog
可以看到返回{"repositories":["mynginx"]}
說明已經push到了自己的registry
第六步:測試pull
同樣還是在本機上進行pull
首先刪除本機存在的映象192.168.1.78:5000/mynginx(剛才通過tag重新命名的)
docker rmi 192.168.1.78:5000/mynginx
然後
docker images
可以看到已經沒有了192.168.1.78:5000/mynginx這個映象
下面開始pull這個映象
docker pull 192.168.1.78:5000/mynginx
然後再看
docker images
可以看到出現這個192.168.1.78:5000/mynginx
說明pull成功了
第七步:在其他的物理機上pull這個映象
同樣需要在安裝docker,然後再/etc/docker/daemon.json這個檔案中
新增insecure-registries,ip地址自己更改:
{
"insecure-registries":["192.168.1.78:5000"]
}
然後重啟docker,執行
ststemctl daemon-reload docker
systemctl restart docker
docker pull 192.168.1.78:5000/mynginx
這樣子就可以從自己的registry拉取映象了,當然也可以上傳映象
假如有一個mynginx:1.1
docker tag 192.168.1.78:5000/mynginx 192.168.1.78:5000/mynginx:1.1
docker push 192.168.1.78:5000/mynginx:1.1
其實192.168.1.78:5000/這個就是建立的私有registry的地址
無認證的registry已經完成了,特別在區域網內部開發或者線上部署時非常有用!
下一節將會總結一下關於認證模式的registry,歡迎留意!
相關推薦
docker-建立私有registry(一)
我們知道可以使用hub.docker.com作為我們公共或者私有的registry。但由於伺服器在國外的原因,網速會非常的慢。所以我們在利用docker開發構建容器服務時,我們希望能夠建立自己的私有re
Docker建立私有Registry
一、從github上下載registry映象 [[email protected] ~]# docker pull registry 二、建立Docker Registry [[email protected] ~]# docker run -d -v
Docker部署註冊中心、Docker建立私有映象庫、自簽名證書、Deploy a registry server
這是我在內部部署Docker Registry時記錄下來的筆記,操作環境是Centos 7、Docker 18.06.1-ce 1、執行registry 我當前所使用的主機的IP是192.168.1.249,工作目錄在:/data/docker/registry, #
docker 建立私有倉庫-registry
###設定私有倉庫 registry 一、建立docker 1.設定防火牆 iptables -I INPUT 1 -p tcp --dport 5000 -j ACCEPT 2. 新增軟體源資訊 sudo yum install -y yum-utils device-ma
docker 建立私有映象倉庫
mkdir -p /registry/public/repos docker run --name register -p 5000:5000 -v /registry/public/repos:/var/lib/registry -d registry 開放埠 fire
docker建立私有倉庫
倉庫(Repository)是集中存放映象的地方。一個容易混淆的概念是註冊伺服器(Registry)。實際上註冊伺服器是管理倉庫的具體服務 器,每個伺服器上可以有多個倉庫,而每個倉庫下面有多個映象。從這方面來說,倉庫可以 被認為是一個具體的專案或目錄。例如對於倉庫地址 docker.sina.com.c
一路踩坑:Centos7環境下Docker搭建私有registry
寫在前面: Docker私有registry指的是在私有伺服器上搭建的、用於管理Docker repositories的實體。可以理解成私有的Docker資源管理倉庫。搭建Docker私有registry,本質上是從Docker官方庫拉取registry映象,
docker搭建私有registry及開啟docker映象編譯伺服器遠端訪問許可權
一、前言 本案例使用阿里雲伺服器搭建,筆者將registry和docker映象編譯分開在兩臺機器,小夥伴們實際使用,可以在一臺機器操作即可。 環境:Centos7 registry伺服器 IP:47.100.219.117 docker映象編譯伺服器
解決Jenkins建立Docker Image後無法推送到私有Registry的問題
最近剛開始使用Docker,把常用的命令摸了一遍後,就想把映象的build過程放到Jenkins上。具體過程就不說了,十分簡單,只需要幾條命令就可以了。 可以在向私有registry推送時卻報出了異常: docker push registry.mydo
使用Docker registry映象建立私有倉庫
2015-01-25 wcdj 摘要:安裝Docker後,可以通過官方提供的registry映象來簡單搭建一套本地私有倉庫環境,本文記錄簡單的搭建過程。 1 使用registry啟動私有倉庫的容器 docker run -d -p 5000:5000 -v /root/m
Docker 之 私有倉庫registry
cat 曝光 catalog mar ron 測試 mbo detail 查看 摘要: 1.拉去 registry鏡像,例如在daocloud.io/registry這個私有鏡像倉庫 docker pull daocloud.io/registry 2.運行容器,掛在鏡像內
Docker本地私有倉庫的建立
docker 本地倉庫 環境:192.168.139.26 docker的客戶端192.168.139.52 docker的服務器端(倉庫所在位置)首先在192.168.139.52上下載registry鏡像[email protected]/* */:~$ sudo docker pul
docker:用registry快速搭建私有鏡像倉庫
docker docker 私有鏡像 registry docker registry 1、背景 在 Docker 中,當我們執行 docker pull xxx 的時候,可能會比較好奇,docker 會去哪兒查找並下載鏡像呢? ?它實際上是從 registry.hub.docker.co
docker網絡管理與本地私有Registry創建部署
docker網絡分類 docker網絡管理 docker Registry部署 docker Registry htt 概述 上一篇博客大致描述了docker的原理與傳統虛擬機的使用,以及docker基本使用,本文主要描述docker的網絡管理及重點介紹docker本地(內部)registry
Docker鏡像創建及建立私有倉庫
tar.gz 分別是 system ffffff .tar.gz 通過 用戶 apache -o Docker鏡像創建方法 創建鏡像的方法有三種,分別是基於已有的鏡像創建、基於本地模板創建、基於Dockerfile 創建,下面著重介紹這三種創建鏡像的方法。 ? 基於已有鏡像
docker for mac 建立私有倉庫
拉取映象 docker pull registry 執行registry run -d -p 5000:5000 -v /Users/huangenai/docker/registry:/var/lib/registry registry -d後臺執行
Harbor--搭建企業級私有docker映象倉庫(一)
Harbor映象倉庫搭建 Harbor是一個用於儲存和分發Docker映象的企業級Registry伺服器,通過新增一些企業必需的功能
docker容器技術之私有registry(七)
上一篇文章:docker容器技術之Dockerfile詳解(六) 目錄 方法一:docker distribution 方法二:Harbor 方法一:docker distribution docker為了能夠
docker私有Registry倉庫--快速搭建--------harbor
Harbor可以通過Docker Composer的方式來部署,如果有正常執行的k8s環境,也可以使用k8s來部署Harbor,本文采用 Docker Composer的方式。 準備 Linux系統為Centos 7。 docker ,預設安裝即可 yum -y
docker基礎 私有倉庫repository搭建(1) registry
ttr def ffi gis label mes 等等 建立 serve 使用docker的login命令之後,可以使用push命令將鏡像推送到dockerhub上,但是dockerhub畢竟在公網上,免費的帳戶只有一個private 的repository是免費的,