Docker學習筆記——私有倉庫部署

1、系統環境:CentOS 7.3

   172.16.0.44  registry  已安裝docker

   172.16.0.45  client    已安裝docker

2、未加密倉庫部署

   下載registry鏡像

  docker pull registry

   啓動一個registry容器

  docker run -d -p 5000:5000 -v /opt/registry/:/tmp/registry registry

   下載一個需要私有部署的鏡像

  docker pull redis

   修改鏡像的tag

  docker tag redis 172.16.0.44:5000/redis

   上傳打完tag的鏡像到私有倉庫

  docker push 172.16.0.44:5000/redis
  The push refers to a repository [172.16.0.44:5000/redis]
  Get https://172.16.0.44:5000/v2/: http: server gave HTTP response to HTTPS client

   因爲從 docker1.3.2 開始,docker registry 默認都是使用v2,使用 https 協議而不是 http

   解決辦法:

   在/etc/docker目錄下,創建daemon.json文件,添加如下內容:

  { "insecure-registries":["172.16.0.44:5000"] }

   保存退出

  systemctl daemon-reload
  systemctl restart docker

   重啓後再次上傳鏡像,會提示如下錯誤

  The push refers to a repository [172.16.0.44:5000/redis]
  Get http://172.16.0.44:5000/v2/: dial tcp 172.16.0.44:5000: getsockopt: connection refused

   這是因爲重啓docker服務後,剛纔創建的registry倉庫的容器停止了,重啓啓動容器,就可以上傳成功了

  docker push 172.16.0.44:5000/redis
  The push refers to a repository [172.16.0.44:5000/redis]
  2bf5fdee0818: Pushed 
  e23ed9242cd7: Pushed 
  32f085a1e7bb: Pushed 
  05d392f56700: Pushed 
  2b0fb280b60d: Pushed 
  latest: digest: sha256:ee24c6a68d9ce22df1aa743ea4c624cdc74e4d99b78e199d480292675249ebca size: 1364

   檢查私有倉庫是否配置成功

  curl http://172.16.0.44:5000/v2/_catalog
  {"repositories":["redis"]}

   在客戶端下載私有倉庫上的鏡像查看成功

  docker pull 172.16.0.44:5000/redis

3、加密倉庫部署

   上傳或生產自己的證書文件到倉庫服務器上

   把證書文件server.key server.pem上傳到certs目錄下

  mkdir -p /etc/docker/certs

   啓動registry容器

  docker run -d -it -p 5000:5000 --restart=always --name zx_registry -v `pwd`/certs:/etc/docker/certs/ -v /opt/registry/:/tmp/registry -e REGISTRY_HTTP_TLS_CERTIFICATE=/etc/docker/certs/server.pem -e REGISTRY_HTTP_TLS_KEY=/etc/docker/certs/server.key registry

   拷貝證書文件到客戶端

  scp certs/server.pem [email protected]:/etc/pki/ca-trust/source/anchors/

   客戶端更新證書文件

  cd /etc/pki/ca-trust/source/anchors
  update-ca-trust

   後面的操作就同未加密倉庫部署一樣,下載鏡像,鏡像打tag,上傳鏡像到本地倉庫,客戶端下載私有鏡像


知行辦公,專業移動辦公平臺
【總監】十二春秋之,[email protected]
【Master】zelo,[email protected]
【運營】運維艄公[email protected]
【產品設計】流浪貓,[email protected]
【體驗設計】兜兜,[email protected]
【iOS】淘碼小工,[email protected];iMcG33K,[email protected]
【Android】人猿居士,[email protected];思路的頓悟,[email protected]
【java】首席工程師MR_W,[email protected]
【測試】土鏡問道,[email protected]
【數據】喜樂多,[email protected]
【安全】保密,你懂的。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章