docker推送自己的镜像到dockerhub上。

很多时候在构建docker镜像的时候,因为使用到的源是国外的或一些其他原因,导致构建时间过长。

当我们遇到这样的情况的时候怎么办呢?

解决方案:自己制作一个基础镜像(这个镜像做为基础容器),我们在写dockerfile的时候基于这个镜像进行构建。这样构建的时候直接拉取已经构建好的基础镜像,然后在此基础上进行其他的操作,这样做可以大大减少我们的构建时间。

那么我们,怎么将本地的镜像上传到dockerhub中呢?

1、登录dockerhub。

  docker login

 这里我已经登录过了,所以是这样的效果。如果没有登录过,会提示你填写dockerhub的用户名和密码。

tips:没有dockerhub账号的自己先注册一个哈。

2、准备本地镜像。(这里我们以现成的redis为例)

  docker pull redis:latest

 

 3、给redis镜像打上tag。一定要打上tag,并带上dockerhub的账号。要不然没办法上传到dockerhub上。

  docker tag redis:latest 573734817/redis:1.01

其中:redis:latest是当前本地用户的镜像的“名字:TAG”。

           573734817是我自己的dockerhub账号。

           redis:1.01是我们自己定义的镜像名和版本号。

 4、将该打好tag的镜像推送到dockerhub上。

  docker push 573734817/redis:1.01

 我们来看看结果:

 我们可以看到在dockerhub上已经有了我们刚刚推送上去的redis基础镜像了,并且版本为1.01

现在我们班本地的redis镜像都删除掉,然后pull我们刚才上传到dockerhub上的redis基础镜像。

 可以看到当前并没有redis的镜像。

我们pull一下。

   docker pull 573734817/redis:1.01

 可以看到,我们已经成功的将放在自己dockerhub里面的redis基础镜像pull下来了。

那么这就代表着,我们可以基于该dockerhub上的镜像进行容器的构建了。


原文地址:https://www.cnblogs.com/573734817pc/p/docker.html