文章目錄
- 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
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
5、檢視效果
1、到服務端檢視:
cd /docker/registry/docker
# 會有一個docker的檔案夾
tree
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
這就已經成功了
6、注意點1、這篇文章基本不算原創,原部落客的用戶端隻不過是centos的,我的是Windows的。當有需要用戶端是centos的可以直接看原部落客,順便如果按照上面操作OK了,也強烈推薦看下原部落客的文章,有很多私有庫其餘的知識點可以學習
2、下一篇提供搭建docker私有庫,配置證書模式
3、我深知以上提供的教程還是不算完整,有些地方還是會有問題,
提供一個群:807770565,歡迎各位進來尬聊