Docker push镜像失败解决方法

Docker push镜像失败的问题。

以下是输入push自己的tomcat后出现了失败

[root@slave3 ~]# docker push lekkoliu/tomcat8:latest
The push refers to a repository [docker.io/lekkoliu/tomcat8]
cefee3f6c961: Preparing
82f021d9c2b9: Preparing
4f91f02b4e49: Preparing
a4b3ce7e1d4a: Preparing
c3b95f8496f1: Preparing
bcfb53b3ff7c: Waiting
3aa267e87e63: Waiting
6c0ce72ad569: Waiting
3242004f198a: Waiting
b2ac5371e0f2: Waiting
142a601d9793: Waiting
unauthorized: authentication required

以下是已经执行过的方案:将private hub改变为 public,不能解决这个问题。

解决方案:

这里尤其注意,如果命名方式不对,是不行的。

以我自己的为例:

我docker官方中申请的hub为:

PRIVATE REPOSITORY
lekko/liu

这里在执行本地docker push的时候,要先利用docker tag的命令来修改image为符合规范(docker tag username/userimage)的命名。

例如:

[root@slave3 ~]# docker tag lekko/liu/tomcat8 lekko/tomcat8

之前我以为username是我整个的名字即lekko/liu。后来我经过多次测试,测出原来这里的username指的是申请的账号,即我的lekko/liu中的lekko。

此时,如上面代码所示,修改后的image名称为lekko/tomcat8。

因此这里把这个image push出去即可。

[root@slave3 ~]# docker push lekko/tomcat8
The push refers to a repository [docker.io/lekko/tomcat8]
cefee3f6c961: Layer already exists
82f021d9c2b9: Layer already exists
4f91f02b4e49: Layer already exists
a4b3ce7e1d4a: Layer already exists
c3b95f8496f1: Layer already exists
bcfb53b3ff7c: Layer already exists
3aa267e87e63: Layer already exists
6c0ce72ad569: Layer already exists
3242004f198a: Layer already exists
b2ac5371e0f2: Layer already exists
142a601d9793: Layer already exists
latest: digest: sha256:4c878796e09584128e4eb3a17c9d6cb66c33e3678db377aa1921110116e2b4da size: 2625

此时,可以通过docker 服务器来来取到刚才上传好的镜像:

[root@master ~]# docker pull lekko/tomcat8
Using default tag: latest
latest: Pulling from lekko/tomcat8
6a5a5368e0c2: Pull complete
7b9457ec39de: Pull complete
d5cc639e6fca: Pull complete
dae3b0638638: Pull complete
ab678d1c6f00: Pull complete
d5bf826c3153: Pull complete
0081bad1df81: Pull complete
8fafa3f26de4: Pull complete
ae984359ed7e: Pull complete
9175a2e1674f: Pull complete
2e8f15e74426: Pull complete
Digest: sha256:4c878796e09584128e4eb3a17c9d6cb66c33e3678db377aa1921110116e2b4da
Status: Downloaded newer image for lekko/tomcat8:latest

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • 两种方式创建docker镜像的启动容器时区别介绍(总结篇)

    Docker是建立在Linux内核基础上的,在目前的主流Linux系统中,都已经原生支持了Docker且使用体验也最好,当然,在Windows平台和MacOS系统中也支持Docker,只是需要使用类似Boot2Docker等虚拟化工具来提供Linux支持. 下面重点给大家介绍基于两种创建docker镜像的启动容器时区别,感兴趣的朋友可以跟着小编一起学习! 1.凡是用docker commit生成的镜像启动的时候可以加载一个启动自己应用的脚本,例如: docker run -d -P tomcat

  • Docker镜像构建的两种方法解析

    关于Docker里面的几个主要概念 这里用个不太恰当的比方来说明. 大家肯定安装过ghost系统,镜像就像是ghost文件,容器就像是ghost系统.你可以拿别人的ghost文件安装系统(使用镜像运行容器),也可以把自己现有的系统制作成ghost文件(从容器构建镜像).Dockerfile则像是一个生成ghost文件的脚本(镜像构建脚本),这个脚本会指定去哪里下载哪个版本的window系统,再去哪里下载哪些软件并安装,再修改哪些配置文件,等等.本文主要讲的是,如何从容器构建镜像(把现有系统制作成

  • 利用Docker制作Nginx+PHP镜像的步骤详解

    前言 这篇文章给大家介绍的是使用Docker制作nginx+php的镜像,本文里的镜像是centos + nginx 1.9.7 + php 5.6.14,下面话不多说,直接看实现的步骤吧. 1.首先下载到nginx和php: nginx-1.9.5.tar.gz 下载:http://nginx.org/en/download.html php-5.6.14.tar.gz   下载:>http://php.net/downloads.php 2.以及扩展包so: memcache-2.2.4.t

  • Docker创建镜像两种方法详解

     Docker创建镜像             最近学习Docker 的知识,偶然在网上看到关于Docker 创建对象的两种方法很好,这里记录下,也许可以帮助到你. 我们都知道Docker中我们是基于镜像来运行的容器,那如何创建镜像呢?创建镜像有两种方法,一是使用docker commit命令,二是使用docker build命令和Dockerfile文件.这里我们说的创建镜像是指基于一个已有的基础镜像比如ubuntu等,而不是从零创建一个全新的镜像. 下面分别简单介绍一下两种方法.      

  • Docker 下载镜像慢的问题解决方法

    docker 解决下载镜像慢 使用Docker pull 镜像这个超级慢,因为docker的hub是在国外的,所以是特别慢的,有什么办法可以解决这个问题么?答案肯定是有的,我们可以使用docker的代理的解决这个问题,大家要自己准备一个可以使用的http代理地扯 原文. 代理设置 此文使用的系统是fedora 创建一个docker service目录 mkdir /etc/systemd/system/docker.service.d 创建 /etc/systemd/system/docker.

  • 简单谈谈Docker镜像的使用方法

    在上篇文章(在Docker中搭建Nginx服务器)中,我们已经介绍了如何快速地搭建一个实用的Nginx服务器.这次我们将围绕Docker镜像(Docker Image),介绍其使用方法.包括三部分: 从Docker Hub或者其他镜像源安装Docker镜像 从Image file安装Docker镜像 从Docker file制作Docker镜像 查找Docker镜像 安装Docker镜像的第一步,是查找你需要的Docker镜像列表,键入: docker search mysql 如果出现权限问题

  • Docker创建镜像、怎么修改、上传镜像等详细介绍

    Docker 创建镜像.修改.上传镜像 –创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个. 一.创建镜像 创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个. 二.修改已有镜像 1.先使用下载的镜像启动容器. $ docker run -t -i training/sinatra /bin/bash root@0b2616b0e5a8:/# 注意:记住容器的 ID,稍后还会用到. 2.

  • Docker常用的清除容器镜像命令小结

    前言 Docker 是一个非常有趣的项目.它自己宣称可以减轻部署服务器的难度,当然我相信里面有炒作的成分.但是实际使用后,我觉得 Docker 的表现还是可圈可点的.这篇文章主要总结了Docker清除容器镜像常用的命令,下面来一起看看吧. 杀死所有running状态的容器 docker kill $(docker ps -q) 删除所有已经停止的容器 docker rm $(docker ps -a -q) 删除所有\'untagged/dangling\' ()状态的镜像 docker rmi

  • Docker镜像保存为文件及从文件导入镜像的方法

    1.概述 我们制作好镜像后,有时需要将镜像复制到另一台服务器使用. 能达到以上目的有两种方式,一种是上传镜像到仓库中(本地或公共仓库),但是另一台服务器很肯能只是与当前服务器局域网想通而没有公网的,所以如果使用仓库的方式,只能自己搭建私有仓库,这会在另一篇文章中介绍. 如果我们仅仅是要复制到另外少数的服务器,搭建私有仓库显然没有这个必要,而将镜像保存为文件上传到其他服务器再从文件中载入镜像也是一个不错的选择. 可以使用Docker save和Docker load命令来存储和载入镜像. 2.保存

  • 详解如何修改docker pull镜像源

    Docker Hub Mirror 为全球最大的Docker Registry(Docker Hub)提供在中国的镜像代理服务.Docker Hub Mirror会为中国的用户在国内的服务器上缓存诸多镜像 当用户的Docker设定了--registry-mirror参数后,用户的Docker下拉镜像时,首先去Docker Hub Mirror中查找镜像,若命中则说明该镜像已经在Docker Hub Mirror中缓存,用户直接从Docker Hub Mirror中下载:若没有命中,则说该镜像还没

随机推荐