如何保存一个Docker镜像

我试图按照https://www.ctl.io/developers/blog/post/docker-networking-rules/上的教程进行操作,其中包含以下内容:

在这里输入图像说明

据我所知,代码

FROM ubuntu:trusty MAINTAINER Laura Frank <laura.frank@centurylink.com> CMD while true; do echo 'hello world' | nc -l -p 8888; done 

是一个Dockerfile的内容,它可以放在一个新创build的空目录中,并使用命令docker build .

我不太明白,但是如何“命名”图像no-exposed-ports ? 我是否应该使用标记( -t选项),如https://docs.docker.com/engine/tutorials/dockerimages/中的示例所示?

我相信通过“命名”Docker镜像,确实意味着您使用了一个标签。 我使用了这个命令

 docker build -t no-exposed-ports . 

这给出了以下回应:

 Sending build context to Docker daemon 2.048 kB Step 1 : FROM ubuntu:trusty ---> 3f755ca42730 Step 2 : CMD while true; do echo 'hello world' | nc -l -p 8888; done ---> Using cache ---> b8a7551d0ed9 Successfully built b8a7551d0ed9 

从命令docker images我可以看到, no-exposed-portsREPOSITORY的名称,并且latest的默认标签已经被分配:

 REPOSITORY TAG IMAGE ID CREATED SIZE no-exposed-ports latest b8a7551d0ed9 18 minutes ago 188 MB 

最后,用命令运行

 docker run -d --name no-exposed-ports no-exposed-ports 

产生一个长的散列,如在博客中的例子:

 eb39d8ef68826510f4c964ad586ff04b9e334433538d9d69a39aa0ec44d6701f