分享镜像
要分享 Docker 镜像,必须使用 Docker 注册表。默认注册表是 Docker Hub,我们使用的所有镜像都来自这里。
创建一个仓库
要推送镜像,我们首先需要在 Docker Hub 上创建一个仓库。
-
如果需要,请转到 Docker Hub 并登录。
-
单击
Create Repository
按钮。[外链图片转存中…(img-fQYADbDA-1657608240139)]
-
仓库名称为
getting-started
,可见性为Public
。 -
点击
Create
按钮!
[外链图片转存中…(img-rkaz7jEi-1657608240140)]
如果查看页面的右侧,有一个Docker commands部分,这提供了一个示例命令,需要运行该命令才能推送到此存储库。
[外链图片转存中…(img-Cj1CdkqG-1657608240141)]
docker push yuyun21/getting-started:tagname
push镜像
1、运行 Docker Hub 上看到的 push 命令:
[外链图片转存中…(img-7hHj0gmN-1657608240141)]
push 命令正在寻找一个名为 docker/getting-started 的图像,但没有找到
2、使用命令登录 Docker Hub
docker login -u YOUR-USER-NAME
3、使用docker tag
命令为getting-started
镜像指定一个新名称。将YOUR-USER-NAME
换成 Docker ID
[外链图片转存中…(img-qG1HlwCP-1657608240142)]
4、查看镜像文件
docker image ls
[外链图片转存中…(img-Qx34150K-1657608240143)]
5、现在再次尝试推送命令。如果是从 Docker Hub 复制下来的命令,则可以删除tagname
部分,因为我们没有为镜像名称添加标签。如果不指定标签,Docker 将使用latest
作为标签名
docker push YOUR-USER-NAME/getting-started
[外链图片转存中…(img-BpXkl70R-1657608240143)]
此时打开dockerhub可以看到镜像已经push上去了
[外链图片转存中…(img-TJFlNUaz-1657608240144)]
在New Instance上运行镜像
现在我们的镜像已经构建并推送到注册表中,让我们尝试在从未见过此容器镜像的全新实例上运行我们的应用程序!为此,我们将使用 Play with Docker。
-
打开浏览器访问Play Docker。
-
使用 Docker Hub 帐户登录。
-
登录后,单击左侧栏中的
+ ADD NEW INSTANCE
链接。(如果没有看到,请将浏览器扩大一点)几秒钟后,浏览器中将打开一个终端窗口。[外链图片转存中…(img-sEtjAeLu-1657608240145)]
-
在终端中,启动新推送的镜像。
docker run -dp 3000:3000 yuyun21/getting-started
应该看到图像被拉下并最终启动!
[外链图片转存中…(img-bY0tBzDA-1657608240146)]
-
运行完成后会打开一个新的标签,这个标签中可以看到push的应用程序。如果未显示,可以单击
Open Port
按钮
[外链图片转存中…(img-OBJ46vgB-1657608240147)]
在弹窗中输入3000
[外链图片转存中…(img-EzMUtaJf-1657608240148)]
点击“确定”,就会打开一个新的标签页,如图:
[外链图片转存中…(img-xfg3QuCr-1657608240149)]### 分享镜像
要分享 Docker 镜像,必须使用 Docker 注册表。默认注册表是 Docker Hub,我们使用的所有镜像都来自这里。
创建一个仓库
要推送镜像,我们首先需要在 Docker Hub 上创建一个仓库。
-
如果需要,请转到 Docker Hub 并登录。
-
单击
Create Repository
按钮。 -
仓库名称为
getting-started
,可见性为Public
。 -
点击
Create
按钮!
如果查看页面的右侧,有一个Docker commands部分,这提供了一个示例命令,需要运行该命令才能推送到此存储库。
docker push yuyun21/getting-started:tagname
push镜像
1、运行 Docker Hub 上看到的 push 命令:
push 命令正在寻找一个名为 docker/getting-started 的图像,但没有找到
2、使用命令登录 Docker Hub
docker login -u YOUR-USER-NAME
3、使用docker tag
命令为getting-started
镜像指定一个新名称。将YOUR-USER-NAME
换成 Docker ID
4、查看镜像文件
docker image ls
5、现在再次尝试推送命令。如果是从 Docker Hub 复制下来的命令,则可以删除tagname
部分,因为我们没有为镜像名称添加标签。如果不指定标签,Docker 将使用latest
作为标签名
docker push YOUR-USER-NAME/getting-started
此时打开dockerhub可以看到镜像已经push上去了
在New Instance上运行镜像
现在我们的镜像已经构建并推送到注册表中,让我们尝试在从未见过此容器镜像的全新实例上运行我们的应用程序!为此,我们将使用 Play with Docker。
-
打开浏览器访问Play Docker。
-
使用 Docker Hub 帐户登录。
-
登录后,单击左侧栏中的
+ ADD NEW INSTANCE
链接。(如果没有看到,请将浏览器扩大一点)几秒钟后,浏览器中将打开一个终端窗口。
-
在终端中,启动新推送的镜像。
docker run -dp 3000:3000 yuyun21/getting-started
应该看到图像被拉下并最终启动!
-
运行完成后会打开一个新的标签,这个标签中可以看到push的应用程序。如果未显示,可以单击
Open Port
按钮
在弹窗中输入3000
点击“确定”,就会打开一个新的标签页,如图: