当前位置: 首页 > 面试题库 >

将docker更新至1.12后无法拉/推图像

虞博涛
2023-03-14
问题内容

私有注册表在docker 1.10.3的基础上运行良好,但是在docker更新到1.12.0之后我无法拉/推映像。

我已经将/ etc / sysconfig / docker修改为:

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

要么

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

但是当我执行拉/推,我得到了这个错误:

$ 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

当我将docker改回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

在以调试模式重新启动docker守护程序后,下面列出了重现我的问题时的守护程序日志:

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

没有配置代理。总之,这只是一个安静的示例测试环境。


问题答案:

我遇到过同样的问题。

  • 在客户端机器上* 创建或修改 /etc/docker/daemon.json *

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

  • 重新启动docker daemon

sudo /etc/init.d/docker restart



 类似资料:
  • private registry在docker 1.10.3的基础上工作得很好,但在docker更新到1.12.0后,我无法拉/推映像。 我已将/etc/sysconfig/docker修改为: 或 更重要的是,我只是运行一个简单的命令来启动私有注册表进行测试,其他的都是默认的: 未配置代理。总而言之,它只是一个测试的安静的样本环境。

  • 我们使用git,有一个主分支和开发人员分支。我需要添加一个新功能,然后将提交重新设置为master,然后将master推送到CI服务器。 问题是,如果我在rebase期间有冲突,我就不能在rebase完成后推送到我的远程开发人员分支(在Github上),直到我拉出我的远程分支。这会导致重复提交。当没有冲突时,按预期工作。 问题:在衍合和解决冲突后,如何在不创建重复提交的情况下同步本地和远程开发人员

  • 将Gradle build tools升级至最新版本,则会出现此问题。无法解析配置“:classpath”的所有项目。 无法解析com。Android工具。构建:渐变:3.5.1。所需者:项目:无法解析com。Android工具。构建:渐变:3.5.1。无法获取资源的名称https://dl.google.com/dl/android/maven2/com/android/tools/build/

  • 更新新的jar文件后,我使用以下代码。然而在硒的早期版本中,它工作得很好。 我更新了,因为它给出了错误: 组织。openqa。硒。NoTouchElementException:找不到索引为1的选项 对于此错误的留档,请访问:http://seleniumhq.org/exceptions/no_such_element.html构建信息:版本:未知,修订版:2aa21c1,时间:2016-08-

  • 我还不太了解dockerhub。我得到了以下案例: 我为中心标记了几张图片 docker标签myImageA myuser/myrepo: 1 docker标签myImageB myuser/myrepo: 1 docker标签myImageC myuser/myrepo: 1 然后我用docker push myuser/myrepo推送它们 现在,当删除所有本地图像并再次拉入自己的docker

  • 我刚刚将我的Spring Boot应用程序(版本2.3.1.RELEASE)中的Springfox依赖项从2.9.2更新到2.10.4。 由于< code > spring fox . documentation . * 包中的类发生了变化,我不得不将配置类中的注释从 到 还谓词进口从谷歌Guav 当我现在打开 http://localhost:8080/swagger-ui.html 时,我收到