2016-08-01 6 views
45

プライベートレジストリはドッカー1.10.3に基づいて正常に動作しましたが、ドッカーが1.12.0にアップデートされた後はイメージをプル/プッシュできません。アップデートドッカーの後にイメージをプル/プッシュできません1.12

私がように/ etc /のsysconfig /ドッキングウィンドウを変更していた:

OPTIONS='--selinux-enabled=true --insecure-registry=myip:5000' 

または

OPTIONS='--selinux-enabled=true --insecure-registry myip:5000' 

が、私はプッシュ/プルをexecしたときに、私はこのエラーを得た:

$ docker pull myip:5000/cadvisor 
Using default tag: latest 
Error response from daemon: Get https://myip:5000/v1/_ping: http: server gave HTTP response to HTTPS client 

ドッカーを1.10.3に戻すと、以下のように正常に動作します。

$ docker pull myip:5000/cadvisor 
Using default tag: latest 
Trying to pull repository myip:5000/cadvisor ... 
latest: Pulling from myip:5000/cadvisor 
09d0220f4043: Pull complete 
a3ed95caeb02: Pull complete 
151807d34af9: Pull complete 
14cd28dce332: Pull complete  
Digest: 
sha256:33b6475cd5b7646b3748097af1224de3eee3ba7cf5105524d95c0cf135f59b47 
Status: Downloaded newer image for myip/cadvisor:latest 

いくつかの相対的な情報は以下のとおりです:

docker version 
Client: 
Version: 1.12.0 
API version: 1.24 
Go version: go1.6.3 
Git commit: 8eab29e 
Built: 

OS/Arch: linux/amd64 

Server: 
Version: 1.12.0 
API version: 1.24 
Go version: go1.6.3 
Git commit: 8eab29e 
Built: 

OS/Arch: linux/amd64 

docker info 
Containers: 4 
Running: 1 
Paused: 0 
Stopped: 3 
Images: 241 
Server Version: 1.12.0 
Storage Driver: devicemapper 
Pool Name: docker-253:0-6809-pool 
Pool Blocksize: 65.54 kB 
Base Device Size: 107.4 GB 
Backing Filesystem: xfs 
Data file: /dev/loop0 
Metadata file: /dev/loop1 
Data Space Used: 5.459 GB 
Data Space Total: 107.4 GB 
Data Space Available: 34.74 GB 
Metadata Space Used: 9.912 MB 
Metadata Space Total: 2.147 GB 
Metadata Space Available: 2.138 GB 
Thin Pool Minimum Free Space: 10.74 GB 
Udev Sync Supported: true 
Deferred Removal Enabled: false 
Deferred Deletion Enabled: false 
Deferred Deleted Device Count: 0 
Data loop file: /var/lib/docker/devicemapper/devicemapper/data 
WARNING: Usage of loopback devices is strongly discouraged for production use. Use '--storage-opt dm.thinpooldev' to specify a custom block storage device. 
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata 
Library Version: 1.02.107-RHEL7 (2016-06-09) 
Logging Driver: json-file 
Cgroup Driver: cgroupfs 
Plugins: 
Volume: local 
Network: host overlay null bridge 
Swarm: inactive 
Runtimes: runc 
Default Runtime: runc 
Security Options: seccomp 
Kernel Version: 3.10.0-229.el7.x86_64 
Operating System: CentOS Linux 7 (Core) 
OSType: linux 
Architecture: x86_64 
CPUs: 24 
Total Memory: 62.39 GiB 
Name: server_3 
ID: TITS:BL4B:M5FE:CIRO:5SW6:TVIV:HW36:J7OS:WLHF:46T6:2RBA:WCNV 
Docker Root Dir: /var/lib/docker 
Debug Mode (client): false 
Debug Mode (server): true 
File Descriptors: 21 
Goroutines: 32 
System Time: 2016-08-02T10:33:06.414048675+08:00 
EventsListeners: 0 
Registry: https://index.docker.io/v1/ 
WARNING: bridge-nf-call-iptables is disabled 
WARNING: bridge-nf-call-ip6tables is disabled 
Insecure Registries: 
127.0.0.0/8 

docker exec <registry-container> registry -version 
registry github.com/docker/distribution v2.2.1 

私はデバッグモードでドッキングウィンドウデーモンを再起動した後、デーモンのログは私の問題を再生する際は次のとおりです。

DEBU[0794] Calling POST /v1.24/images/create?fromImage=10.10.10.40%3A5000%2Fcadvisor&tag=latest 
DEBU[0794] hostDir: /etc/docker/certs.d/10.10.10.40:5000 
DEBU[0794] hostDir: /etc/docker/certs.d/10.10.10.40:5000 
DEBU[0794] Trying to pull 10.10.10.40:5000/cadvisor from https://10.10.10.40:5000 v2 
WARN[0794] Error getting v2 registry: Get https://10.10.10.40:5000/v2/: http: server gave HTTP response to HTTPS client 
ERRO[0794] Attempting next endpoint for pull after error: Get https://10.10.10.40:5000/v2/: http: server gave HTTP response to HTTPS client 
DEBU[0794] Trying to pull 10.10.10.40:5000/cadvisor from https://10.10.10.40:5000 v1 
DEBU[0794] hostDir: /etc/docker/certs.d/10.10.10.40:5000 
DEBU[0794] attempting v1 ping for registry endpoint https://10.10.10.40:5000/v1/ 
DEBU[0794] Fallback from error: Get https://10.10.10.40:5000/v1/_ping: http: server gave HTTP response to HTTPS client 
ERRO[0794] Attempting next endpoint for pull after error: Get https://10.10.10.40:5000/v1/_ping: http: server gave HTTP response to HTTPS client 
ERRO[0794] Handler for POST /v1.24/images/create returned error: Get https://10.10.10.40:5000/v1/_ping: http: server gave HTTP response to HTTPS client 
DEBU[1201] clean 2 unused exec commands 

多くはである何、私はちょうどテストのためにプライベートレジストリを起動するための簡単なコマンドを実行します、他の何かがデフォルトであります:

docker run -d -p 5000:5000 --restart=always --name registry -v 'pwd'/data:/var/lib/registry registry:2 

プロキシが設定されていません。要約すると、テスト用の静かなサンプル環境です。

+0

、私も同じエラーに直面しますが、奇妙なことは、RHEL 7では/ etc/sysconfig/dockerファイルを持っていないことです.k今私が見つけることができる任意の同様のファイルですか?このドッカーファイルの内容は何ですか?ありがとうございました。 – sai

+0

このファイルには、ドッカーデーモンの実行方法を変更したい場合にいくつかのオプションがあります。 RHEL7では正確なパスはわかりませんが、 "$ sudo locate docker"コマンドを実行すると、どこかのファイルが見つかります – yuxiaoyu

+0

/etc/docker/daemon.jsonを削除してドッキングサービスを再起動しました/ etc/sysconfig/dockerの設定が無効になっているようです。 –

答えて

110

私は同じ問題がありました。

これは私のために助けた:

  • は、クライアントマシン上で

    { "insecure-registries":["myregistry.example.com:5000"] }

  • 再起動]ドッキングウィンドウデーモン

    /etc/docker/daemon.jsonを作成または変更します

    sudo /etc/init.d/docker restart

+2

これは私にとっても役立ちます!どうもありがとうございました!しかし、理由は何ですか?.. – yuxiaoyu

+6

私の場合は、Ubuntu 16.04と/ etc/default/docker(私の設定があった場所)をupstartに使用しています。 16.04はsystemdを使用します。 /etc/docker/daemon.jsonはプラットフォームに依存しない設定です。 https://github.com/docker/docker/issues/23512 https://github.com/docker/docker/issues/23228 – bojtib

+0

安全でないレジストリを設定する方法は次のとおりです https://docs.docker。 com/registry/insecure/ –

2

Windowsを使用しているし、あなたがここにファイルを作成する必要があり、このエラーが出た場合:"C:\ProgramData\docker\config\daemon.json"

をして@Bspecは上記と同様の操作を行います。

{「安全でない、レジストリを」 :["myregistry.example。COM:5000" ]}

その後、PowerShellを使用してドッキングウィンドウを再起動するコマンド:Windowsの場合

Stop-Service docker 
Start-Service docker 
5

は、ここにローカルレジストリを追加して適用されます。うまく

enter image description here

関連する問題