Docker官网教程笔记(三) ——Share the application

创建账户

Create Repository

在这里插入图片描述
接着
在这里插入图片描述

BTW,这类的Docker Repository设计理念有点像GitHub,GitHub中的Repository其实是”Project“,是供本地同名project push所用的仓库。
Docker Repository也是这样,以上新建的Repository严格说来并不是普通意义的”此用户在DockerHub上的库“,而是存储同名image的仓库。至于普通意义的用户仓库,就是DockerHub本身。。。就像GitHub本身就是代码托管库一样,用户注册了就自然拥有了”库空间“,create Repository只是新建”项目“而已。DockerHub亦然(从名字就一样的对吧。。)
在这里插入图片描述

push

原教程有点乱:为了完整走完”发现问题——解决问题“的流程,把坑也给踩了一遍,看似好像授reader以渔,但最终也没有给出出现问题的原因——docker push时需要遵循的命名规范。
这里给出我的教程:跟我学即可,无坑。然后再解释为什么

login

docker login -u YOUR_DOCKER_NAME -p YOUR_DOCKER_PWD

登录。
PS

docker login

或者

docker login -u YOUR_DOCKER_NAME

都可以登录(类似Mysql)。
登出:

docker logout

docker tag

docker tag LOCAL_IMAGE YOUR_DOCKER_NAME/REPO_NAME:tag

如我制作了:likethewind/whatever:tag2的镜像,具体可以docker images查看。

ps,关于docker tag:
在这里插入图片描述
解读:创建已有的镜像的副本,使用新的名字命名它

docker push

docker push YOUR_DOCKER_NAME/REPO_NAME:tag

即可推送。
如果DockerHub没有REPO_NAME对应的仓库,则push操作将会创建此仓库。

对于docker push的机制

从以上操作可以看到,docker tag时YOUR_DOCKER_NAME完全是多余的,肯定是推送到当前登录的账户(-u的值),这里不知道出于什么考虑。
这里给出”标准“push步骤:
用户likethewind在DockerHub上创建了名为test的仓库(Repository),现在本地想将名为myfirstimage:latest的镜像(同名,多个tag)上传至test仓库。则需要:

  1. 在本地创建likethewind/test镜像
docker tag myfirstimage:latest likethewind/test:latest
  1. push
docker push likethewind/test:latest

这里的镜像名一定要是

YOUR_DOCKER_NAME/REPO_NAME:tag

的形式,:tag可省(默认:latest)。官网也是这么要求的:
Pushing a Docker container image to Docker Hub
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值