Docker镜像推送到DockerHub

喜夏-厌秋 提交于 2019-11-29 06:25:40

Docker镜像推送到DockerHub

注册dockerhub账户并创建仓库

想将镜像推送到dockerhub首选需要拥有dockerhub账户
dockerhub注册地址

登录后按照下图创建一个仓库
在这里插入图片描述
创建仓库只需要填写仓库名name即可

可以选择将仓库公开或私有(逻辑与github相同)

在这里插入图片描述
创建成功:
在这里插入图片描述
使用docker push username/mytest:tagname命令向该仓库推送镜像

创建docker image

要推送docker镜像到dockerhub需要拥有dockerimage

dockerfile制作镜像(使用docker build命令)

语法

docker build [OPTIONS] PATH | URL | -

实例

使用当前目录的 Dockerfile 创建镜像,标签为 usernmae/mytest:v1,镜像名要与接下来要推送的镜像仓库名保持一致。

docker build -t usernmae/mytest:v1 .

使用URL github.com/creack/docker-firefox 的 Dockerfile 创建镜像。

docker build github.com/creack/docker-firefox

也可以通过 -f Dockerfile 文件的位置:

docker build -f /path/to/a/Dockerfile .

基于容器制作镜像(使用docker commit命令)

语法

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

options参数:

-a :提交的镜像作者;
-c :使用Dockerfile指令来创建镜像;
-m :提交时的说明文字;
-p :在commit时,将容器暂停。(基于运行中的容器创建时需要指定该参数)

实例

将一个redis实例制作为一个镜像,镜像名要与接下来要推送的镜像仓库名保持一致.

docker commit myredis username/mytest:v1

登录并推送镜像到dockerhub

  • 使用doker login -u [username] -p [password]命令登录
$ docker login -u username -p password
Login Succeeded
$ 
  • 使用docker push NAME[:TAG]命令推送到dockerhub

若不指定TAG标签,会把mytest所有版本推送到该仓库

实例

$ docker push username/mytest
The push refers to repository [docker.io/username/mytest]
77cea44f06fe: Pushed 
04d0fda6c9b5: Pushed 
36dd8127cf25: Pushed 
0d315111b484: Mounted from library/redis
v1: digest: sha256:8c94239adab0a8bfbaf1e37d9dbe8e41499c35c01d329d9efec985e583ce81f1 size: 1148

推送成功!!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!