天天看點

搭建docker私有倉庫 配置使用者名密碼

文章目錄

  • ​​1、系統配置​​
  • ​​2、搭建服務端​​
  • ​​3、配置Windows用戶端​​
  • ​​4、配置centos用戶端​​
  • ​​5、檢視效果​​
  • ​​6、注意點​​

1、系統配置

服務端:centos 7

用戶端:Windows 10

2、搭建服務端

# 下載下傳 registry
docker pull registry
# 挂載相關的配置
mkdir -p  /docker/registry/auth
# 生成賬号密碼:name password123
docker run --entrypoint htpasswd registry:latest -Bbn name password123  >> /docker/registry/auth/htpasswd
# 設定配置檔案
mkdir -p  /docker/registry/config
vim  /docker/registry/config/config.yml
# 輸入以下檔案
      
version: 0.1
log:
  fields:
    service: registry
storage:
  delete:
    enabled: true
  cache:
    blobdescriptor: inmemory
  filesystem:
    rootdirectory: /var/lib/registry
http:
  addr: :5000
  headers:
    X-Content-Type-Options: [nosniff]
health:
  storagedriver:
    enabled: true
    interval: 10s
threshold: 3
      

啟動:

docker run -d -p 5005:5000 --restart=always  --name=registry \
-v /docker/registry/config/:/etc/docker/registry/ \
-v /docker/registry/auth/:/auth/ \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
-v /docker/registry/:/var/lib/registry/ \
registry
      

3、配置Windows用戶端

1、登入搭建的私有docker倉庫
docker login 106.114.114.114:5005
輸入使用者名密碼,這個地方會報錯,解決辦法會貼截圖
Error response from daemon: Get https://106.114.114.114:5005/v2/: http: server gave HTTP response to HTTPS client
2、标記本地鏡像
# docker tag 選擇一個鏡像 服務端IP:端口/鏡像名:版本
docker tag redis:latest 106.114.114.114:5005/redis:latest
3、推送鏡像到倉庫
docker push 106.114.114.114:5005/redis:latest
      
搭建docker私有倉庫 配置使用者名密碼

4、配置centos用戶端

1、# 一樣的操作,我們先登入
docker login 106.114.114.114:5005
# Error response from daemon: Get https://106.114.114.114:5005/v1/users/: dial tcp 106.114.114.114:5005: i/o timeout

# Error response from daemon: Get https://106.114.114.114:5005/v2/: http: server gave HTTP response to HTTPS client
# 解決:
# vim /etc/docker/daemon.json
# 添加如下内容
# {"insecure-registries":["106.114.114.114:5005","106.114.114.114"]}
2、标記本地鏡像
# docker tag 選擇一個鏡像 服務端IP:端口/鏡像名:版本
docker tag redis:latest 106.114.114.114:5005/redis:latest
3、推送鏡像到倉庫
docker push 106.114.114.114:5005/redis:latest
      
搭建docker私有倉庫 配置使用者名密碼

5、檢視效果

1、到服務端檢視:

cd /docker/registry/docker
# 會有一個docker的檔案夾
tree
      
搭建docker私有倉庫 配置使用者名密碼
搭建docker私有倉庫 配置使用者名密碼

2、到用戶端測試:

# 先将我們生成的鏡像 rmi 掉
docker rmi 106.114.114.114:5005/redis:latest
# 拉取私庫鏡像
docker pull 106.114.114.114:5005/redis
      

3、檢視私有容器中的所有鏡像:

curl -u "name:password123" -X GET http://106.114.114.114:5005/v2/_catalog
      
搭建docker私有倉庫 配置使用者名密碼

這就已經成功了

6、注意點1、這篇文章基本不算原創,原部落客的用戶端隻不過是centos的,我的是Windows的。當有需要用戶端是centos的可以直接看原部落客,順便如果按照上面操作OK了,也強烈推薦看下原部落客的文章,有很多私有庫其餘的知識點可以學習

2、下一篇提供搭建docker私有庫,配置證書模式

3、我深知以上提供的教程還是不算完整,有些地方還是會有問題,

提供一個群:807770565,歡迎各位進來尬聊

繼續閱讀