Dockerプライベートウェアハウスを構築して、ユーザー名とパスワードを構成します


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
# 解决:https://blog.csdn.net/quanqxj/article/details/79479943
# 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である必要がある場合は、元のブロガーを直接見ることができます。ちなみに、上記の操作に従う場合は、元のブロガーの記事を読むことも強くお勧めします。多くの私立図書館があり、shida_csdnを学ぶためのその他の知識ポイント
:https://blog.csdn.net/shida_csdn/article/details/78435971

2.次の記事では、Dockerプライベートライブラリの構築と証明書モードの構成について説明します。

3.上記のチュートリアルがまだ完了しておらず、一部の場所で問題が発生する可能性があることを十分に認識しています。
グループを提供してください:807770565、参加してチャットするすべての人を歓迎します
ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/qq_38637558/article/details/99603071