docker版本为:Server Version: 1.12.6

从dockerhub上下载最新的registry镜像。

首先、构建registry

1、下载registry镜像

  docker pull registry:latest

2、运行registry容器

  在运行容器之前先进行权限配置

    mkdir /home/registry/auth/

    docker run --entrypoint htpasswd registry:latest -Bbn username password>> /home/registry/auth/htpasswd

  以上的命令是创建用户名为 username 密码为 password 的配置文件

  启动容器

  docker run -d -p 5000:5000 --restart=always -e "REGISTRY_AUTH=htpasswd" -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd -v /home/registry/auth/:/auth -v /home/registry/:/var/lib/registry/ registry:latest

3、登陆registry

  docker login IP:5000

  Username: username

  Password: password
Error response from daemon: Get https://IP:5000/v1/users/: http: server gave HTTP response to HTTPS client

  此时提示错误,经过多番查找资料,有以下几种方法解决此问题

  1》在/etc/sysconfig/docker文件中添加一下配置:

    ADD_REGISTRY='--insecure-registry IP:5000'
  为了配置简单,省去安全相关的配置,这里使用--insecure-registry选项。
  修改配置文件后,一定要重启docker服务才能生效,所以执行命令:
  service docker restart

  但是,执行此命令之后docker deamon迟迟无法启动成功,而且还报错。

  所以,继续查找其他解决办法。

  2》配置registry地址的方法:

  对CentOS和Ubuntu都适用的配置文件是
  /etc/docker/daemon.json 
  增加:
  { "insecure-registries":["IP:5000"] }
  修改配置文件后,需要重启docker。
  # service docker restart

  再次登陆registry。

  docker login IP:5000

  Username: username

  Password: password

  Login Succeeded

  之后对本地构建的仓库进行push和pull操作,完全正常。此方法验证无其他问题。

  此时查看docker info会发现最下方Insecure Registries:   多出一条信息

  ......

  ......

Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Insecure Registries:
IP:5000
127.0.0.0/8

  

4、执行 push  和 pull 操作

  1》需要将镜像重新命名:

    docker tag registry:latest IP:5000/registry:latest

  2》执行上传命令:

    docker push IP:5000/registry:latest

    删除重新tag的镜像后,进行下载。

  3》执行下载命令:

    docker pull IP:5000/registry:latest

5、通过浏览器查看是否上传成功

  http://IP:5000/v2/_catalog

  会返回json串  如:{"repositories":["csphere/csphere"]}

  查看已上传的镜像的 tags

  http://IP:5000/v2/csphere/csphere/tags/list

  {"name":"csphere/csphere","tags":["0.13.0"]}

其他报错的解决方式一览:

报错:
sza@bogon:~$ docker push 192.168.1.115:5000/busybox:1.0 
The push refers to a repository [192.168.1.115:5000/busybox]
unable to ping registry endpoint https://192.168.1.115:5000/v0/
v2 ping attempt failed with error: Get https://192.168.1.115:5000/v2/: EOF
v1 ping attempt failed with error: Get https://192.168.1.115:5000/v1/_ping: EOF

解决办法:
修改Docker配置文件
vim /etc/default/docker
增加以下一行
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=192.168.1.115:5000"
重启Docker
sudo service docker restart

如果还出现错误的话,说明需要进行如下步骤解决:
vi /lib/systemd/system/docker.service
要加EnvironmentFile=-/etc/sysconfig/docker和编辑ExecStart=/usr/bin/docker -d $other_args -H fd://

systemctl reload

如果报错:
sza@bogon:~$ docker info
An error occurred trying to connect: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.22/info: read unix @->/var/run/docker.sock: read: connection reset by peer
解决:
vim /etc/default/docker 
在该文件中添加如下内容:
DOCKER_OPTS="-H unix:///var/run/docker.sock -H 0.0.0.0:5555" 
service docker restart

docker构建本地仓库后,无法登陆解决办法(CentOS/Ubuntu)的更多相关文章

  1. wamp中修改后mysq数据库l闪退无法登陆解决办法

    WampServer安装后密码是空的,   修改一般有三种方式:   一是通过phpMyAdmin直接修改:   二是使用WAMP的MySql控制台修改.     三是重置密码    第一种:   1 ...

  2. Docker 构建网络服务后本机不能访问

    Docker 构建网络服务后本机不能访问 起因 使用tornado构建了一个服务,测试都没有问题 使用docker构建镜像,使用docker run image_name启动服务 使用浏览器访问 12 ...

  3. 树莓派(Raspberry Pi 3)安装centos7后yum无法使用解决办法

    树莓派(Raspberry Pi 3)安装centos7后yum无法使用解决办法 人穷,闲鱼淘了个二手的树莓派3 英国版,无奈咱也不会用,很无奈~ 安装教程百度到的差不多都可以,找个格式正常的一步一步 ...

  4. [原]Jenkins(十二)---jenkins管理员用户无法登陆解决办法Access Denied

    /** * lihaibo * 文章内容都是根据自己工作情况实践得出. *如有错误,请指正 * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horiz ...

  5. dell r710 安装ubuntu 12.04 server 启动后进入initramfs解决办法

    dell r710 安装ubuntu 12.04 server 启动后进入initramfs解决办法 grub 启动菜单后加入 rootdelay=90, 如下:/boot/vmlinuz-2.6.3 ...

  6. 通过virtualbox最小化安装centos 6.3后无法上网解决办法

    通过virtualbox最小化安装centos 6.3后无法上网解决办法 1.设置virtualbox的网络连接方式,如下图使用桥接方式,桥接的网卡为宿主正在上网的网卡,现在我是通过无线来上网的,所以 ...

  7. win7 Host文件修改后无效的解决办法

    win7 Host文件修改后无效的解决办法 正常情况下hosts文件随时修改随时生效,如果出现修改后不生效的情况,首先确定文件是ascii编码,以windows格式为换行符,然后依次采用如下方法  1 ...

  8. Centos7从3.10升级内核到4.9后无法启动解决办法:mpt[23]sas驱动问题

    Centos7升级内核后无法启动解决办法:mpt[23]sas驱动问题 前言 这个问题存在有一段时间了,之前做的centos7的ISO,在进行内核的升级以后就存在这个问题: 系统盘在板载sata口上是 ...

  9. 20190713_(转)IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决办法 (转)

    此文为转载; 原文链接地址: https://www.cnblogs.com/mrma/p/3529859.html ----------------------------------------- ...

随机推荐

  1. 如何让linux的history命令显示时间记录

    在.bashrc文件追加如下内容即可: HISTFILESIZE= HISTSIZE= HISTTIMEFORMAT='%F %T ' export HISTTIMEFORMAT

  2. Flutter & Dart 安装在window系统

    一.系统环境 flutter最低要求 1,windows7 SP1 64位版本以上,我的系统就是windows 7 sp1 64bit 2,git for windows ,没有安装的需要到这里下载  ...

  3. JS中常用的Math方法

    1.min()和max()方法 Math.min()用于确定一组数值中的最小值.Math.max()用于确定一组数值中的最大值. alert(Math.min(2,4,3,6,3,8,0,1,3)); ...

  4. MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report e

    早上来到公司,线上的项目报错: Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionExcepti ...

  5. win10下VS2017配置GSL库

    GSL库:GNU Scientific Library 1.  下载:下载Complete package, except sources和Sources两个exe文件 2.  安装:将两个exe安装 ...

  6. POI导出Excel发现不可读取的内容

    环境说明:MyEclipse Tomcat7.0 通过后台查询数据,导出Excel在打开时会出现以下提示: 点击否,则不显示任何内容,点击是,弹出 查看修改记录为: 通过WPS打开不会出现任何提示,可 ...

  7. 【Zookeeper系列】zookeeper面试题(转)

    原文链接:https://segmentfault.com/a/1190000014479433 1.ZooKeeper是什么? ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是 ...

  8. redis出现错误:NOAUTH Authentication required.

    出现认证问题,应该是设置了认证密码,输入密码既可以啦 注意密码是字符串形式! 127.0.0.1:6379> auth "yourpassword" 127.0.0.1:63 ...

  9. python nose 自写插件支持用例带进度

    在自动化测试过程中,当用例很多且要跑很久时,就会出现这样一个问题,不知道当前跑到第几个用例了,还有多少用例要跑,怎么办? 因为用的nose框架,那就看看nose有没有这样的库支持,结果看了一圈,只找到 ...

  10. C++ Msi函数判断应用是否已经安装

    #include <Windows.h> #include <Msi.h> #pragma comment(lib, "Msi.lib") bool Che ...