运行第一个docker容器

之前我们已经介绍过如何在centos7下快速安装docker,关于docker安装参考链接:

centos7下安装docker

这节课我们来讨论一下docker镜像的内容.

首先我们查看下当前本地docker镜像:

[root@xinsz10 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE

可以看到当前是没有任何镜像的,然后我们执行第二条命令,来拉取一个hello-world镜像

[root@xinsz10 ~]# docker pull hello-world Using default tag: latest

#相当于给我们的helloworld后面加 了一个:latest latest: Pulling from library/hello-world

#正在拉取library下的一个hello-world Digest: sha256:b2ba691d8aac9e5ac3644c0788e3d3823f9e97f757f01d2ddc6eb5458df9d801 Status: Image is up to date for hello-world:latest

查看是否下载完成 也就是查看本地镜像

[root@xinsz10 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest 05a3bd381fc2 4 weeks ago 1.84kB 注: REPOSITORY 是镜像名

IMAGE ID 是64位的字符串,这里自动被截掉了,只显示了16位,可以唯一标识我们的镜像

CREATED 修改时间

SIZE 大小

镜像的名字在网站上都可以查到,docker 提供了一个镜像仓库,hub.docker.com 默认到这里下载

镜像下载完成后,我们来看看如何运行

具体命令: docker run +选项 IMAGE [:TAG] [命令] [ARG..] [root@xinsz10 ~]# docker run hello-world WARNING: IPv4 forwarding is disabled. Networking will not work. Hello from Docker! This message shows that your installation appears to be working correctly. #如果这个消息显示出来说明你的安装已经OK了

下面这些英文,是在告诉我们docker运行时经过了那几个步骤 To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://cloud.docker.com/ For more examples and ideas, visit: https://docs.docker.com/engine/userguide/ 根据上面弹出的英文提示,(关于docker执行docker run时所做的那些操作) 我们用示意图来看看docker pull和docker run的整个流程:

左边两个是在本机运行的, 最右面是远程镜像

docker pull会检查本机images里镜像是否存在,如果存在且版本正确,就直接用,如果不存在就从docker 仓库下载回来使用.

docker run也是一样,当执行这个命令时候,也需要到本地的images检查是否存在,不存在也会跟docker pull一样到远端去拉取镜像.

其实: 如果上面有命令,有弹出提示看着太乱,直接在你的虚拟机执行下面三个命令就明白了:

总结: 本小节一共三个命令

docker images 查看当前镜像

docker pull hello-world 下载一个docker镜像

docker run hello-world 运行docker镜像

这是最简单的hello-world ,下节课我们讲解下如何运行一个nginx镜像.

原文发布于微信公众号 - 大数据架构师专家(xinsz08)

原文发表时间:2017-10-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏搜云库

Docker Compose 1.18.0 之服务编排详解

一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose,不再需要使用shell脚本来启动容器。在配置文件中,所有的容器通过serv...

42410
来自专栏猿说1024

Docker 常用命令

2013
来自专栏后台及大数据开发

kubernetes集群搭建(2):docker私有仓库

kubernetes集群搭建(1):环境准备 中各节点已经安装好了docker,请确认docker已启动并正常运行

771
来自专栏实用工具入门教程

如何部署 Docker Compose

Docker是一个很好的工具,用于在软件容器中自动部署Linux应用程序,但要充分利用其潜力,应用程序的每个组件都应该在自己的单独容器中运行。对于具有大量组件的...

5K3
来自专栏应兆康的专栏

Docker 简介与安装

Github: https://github.com/yingzk/MyDocker

43823
来自专栏搜云库

Docker Hub 仓库使用,及搭建 Docker Registry

目前 Docker 官方维护了一个公共仓库 Docker Hub,其中已经包括了数量超过 15,000 的镜像。大部分需求都可以通过在 Docker Hub 中...

40610
来自专栏快乐八哥

运行第一个Docker容器-Docker for Web Developers(1)

1. Docker介绍 Docker由dotCloud公司发起的一个内部项目,后来Docker火了,dotCloud公司改名为Docker了; Docker使用...

21010
来自专栏搜云库

Docker Compose 1.18.0 之服务编排详解

一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose,不再需要使用shell脚本来启动容器。在配置文件中,所有的容器通过serv...

2827
来自专栏大闲人柴毛毛

Docker入门实战(三)——用Dockerfile构建镜像

在Docker中,构建一个自定义镜像共有两种方法,一是通过commit指令构建,二是通过Dockerfile文件构建。第一种方式在上篇博客中已经详细介绍(Doc...

3335
来自专栏zingpLiu

Docker快速入门(一)

Docker是Go语言开发实现的容器。2013年发布至今,备受推崇。相关文档、学习资料十分详尽。近期公司docker项目要推进,得重新学习一下。博客以笔记。

1503

扫码关注云+社区