学习 Docker – (2) 镜像和容器

第二节:学习镜像和容器

https://docs.docker.com/linux/step_two/

在安装的最后一步,你运行了 docker run hello-world 命令,通过这个命令,你使用 Docker 完成了核心的任务,你运行的这个命令有三个部分:

docker run hello-world

# docker: 告诉你的操作系统你要使用 docker 程序
# run: 一个子命令创建并运行一个 Docker 容器
# hello-world: 告诉 Docker 将哪个镜像载入容器

一个容器就是一个最精简的 Linux 操作系统。一个镜像就是用于载入容器的一个软件。当你运行命令的时候,Docker 软件做了这些事情:

  • 检查你是否具有 hello-world 这个软件镜像
  • 从 Docker Hub 上面下载镜像(后面再讲 Hub 的事情)
  • 将镜像加载进容器然后运行

取决于镜像的构建方式,它可能运行一个简单的命令然后就退出了。这就是 hello-world 所做的事情。

然而是谁构建了 hello-world 镜像呢?在这个例子里面,这是 Docker 做的,但是谁都能够做这个事情。Docker 允许人们(或者公司)来创建并且分享它们的软件。使用 Docker,你不需要担心你的电脑能否运行一个 Docker 镜像:你的容器总是能够运行它们。

看,这很快吧?现在你已经可以继续学习 Docker 真正有趣的东西了。我们来到下一章吧。

第三节:找到并且运行 whalesay 镜像

https://docs.docker.com/linux/step_three/

全球范围的人都创建 Docker 镜像。你可以通过浏览 Docker Hub 来找到这些镜像。在这个章节里面,你就要这样找到这个镜像供后面使用。

第一步:找到 whalesay 镜像

1. 打开浏览器,访问 https://hub.docker.com/?utm_source=getting_started_guide&utm_medium=embedded_Linux&utm_campaign=find_whalesay
2. 点击 “Browse & Search”
3. 在搜索栏中输入 whalesay

每个镜像仓库都包含了一个镜像的信息。它应当包含诸如这个镜像是什么类型的软件,以及如何使用它。你可以注意到 whalesay 这个镜像是基于 Linux 的一个叫做 Ubuntu 的发行版的。在下一步里面,你要在你的机器里面运行 whalesay 镜像。

第二步:运行 whalesay 镜像

1. 将你的光标放置到命令行终端的 $ 提示符后面
2. 输入 docker run docker/whalesay cowsay boo 命令然后回车。

这个命令会在容器里面运行 whalesay 镜像,你的终端会出现类似这样的内容:

$ docker run docker/whalesay cowsay boo
Unable to find image 'docker/whalesay:latest' locally
latest: Pulling from docker/whalesay
e9e06b06e14c: Pull complete
a82efea989f9: Pull complete
37bea4ee0c81: Pull complete
07f8e8c5e660: Pull complete
676c4a1897e6: Pull complete
5b74edbcaa5b: Pull complete
1722f41ddcb5: Pull complete
99da72cfe067: Pull complete
5d5bd9951e26: Pull complete
fb434121fc77: Already exists
Digest: sha256:d6ee73f978a366cf97974115abe9c4099ed59c6f75c23d03c64446bb9cd49163
Status: Downloaded newer image for docker/whalesay:latest
 _____
< boo >
 -----
    \
     \
      \
                    ##        .
              ## ## ##       ==
           ## ## ## ##      ===
       /""""""""""""""""___/ ===
  ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
       \______ o          __/
        \    \        __/
          \____\______/

第一次你运行一个软件镜像,docker 命令会在你的本地系统里面查找,如果径向不存在,docker 就从 hub 里面去找。

3. 还是在终端里面,输入 docker images 并按回车

这个命令列出了你本地系统里面所有的镜像。你会在列表中看到 docker/whalesay

$ docker images
REPOSITORY           TAG         IMAGE ID            CREATED            VIRTUAL SIZE
docker/whalesay      latest      fb434121fc77        3 hours ago        247 MB
hello-world          latest      91c95931e552        5 weeks ago        910 B

当你在容器里面运行一个镜像的时候,Docker 将镜像下载到你的计算机里面。这个本地的拷贝会节省你的时间。Docker 仅会在 Hub 中的镜像源改变之后重新下载。当然,你可以自己删掉这个镜像,迟些你就会知道的。让我们离开这个镜像,我们后面还会用到的。

4. 花些时间玩一下这个 whalesay 容器

尝试运行 whalesay 镜像,附带一个单词或者语句。尝试或长或短的语句。你能够断开奶牛吗(Can you break the cow 何解)?

$ docker run docker/whalesay cowsay boo-boo
 _________
< boo-boo >
 ---------
    \
     \
      \     
                    ##        .            
              ## ## ##       ==            
           ## ## ## ##      ===            
       /""""""""""""""""___/ ===        
  ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~   
       \______ o          __/            
        \    \        __/             
          \____\______/   

目前你已经知道如何在 Docker Hub 上面搜索镜像了,你使用你的命令行运行一个镜像。你学习了运行一个镜像,拷贝到你的计算机。现在,你已经准备好来创建你自己的 Docker 镜像了。来进入下一节吧。


【转载请附】愿以此功德,回向 >>

原文链接:https://www.huangwenchao.com.cn/2016/01/learn-docker-2.html【学习 Docker – (2) 镜像和容器】

发表评论

电子邮件地址不会被公开。 必填项已用*标注