资讯专栏INFORMATION COLUMN

使用 Docker 运行第一个容器

shmily / 3120人阅读

摘要:一的个主要概念镜像镜像是容器的基石。可以看成是中的类,容器就是镜像的运行实例,有了镜像才能启动容器。五查看运行的容器查看所有正在运行的容器查看创建的所有容器查看最近创建的一个容器

一、Docker的5个主要概念

镜像(Docker Image)
镜像是Docker容器的基石。可以看成是Java中的类,容器就是镜像的运行实例,有了镜像才能启动容器。镜像可以用来创建Docker容器。可以通过命令“dock images”查看本地的所有镜像。

容器(Docker Container)
Image的一个运行实例就是一个Container,可以看成是Java中的对象,通过类实例化而来。一个Image可以有多个Container,每个Container都是相互隔离的。可以通过命令“docker ps”查看正在运行的Container(或者通过docker ps -a查看所有Container)。

仓库(Docker Repository/Registry)
同maven仓库,它用来存放第三方库。Docker的仓库用来存放镜像,且也可分为公开仓库和私有仓库。

Docker客户端(Docker client)
命令行工具,用于与Docker后台交互。

Docker后台(Docker daemon)
宿主机上运行的Docker后台服务,管理容器的构建、运行、分发等。

二、前言

Docker的安装可以看我前面的文章:
win10下安装Docker
Ubuntu16.04安装Docker
在首次安装Docker后,我们都会使用下面的命令运行第一个容器:

docker run hello-world

但是你知道Docker是怎么工作的吗?这个run的过程,都做了哪些工作?理解了这个,对之后学习使用Docker会有很大帮助。

三、运行过程

运行的时候会进行下面的执行过程, hello-world 其实就是镜像的名称。

因为Docker Hub是国外的仓库,由于网络原因,可能会出现下面的网络连接超时错误:

这时候,就需要使用国内的镜像仓库了,我使用的是阿里云的容器镜像服务

四、使用阿里云的容器镜像服务

注册阿里云账号后,进入“容器镜像服务”页面,里面有详细的配置步骤:

我这里演示的是 Docker for Windows 程序,所以如下设置:

在系统右下角托盘图标内右键菜单选择 Settings,打开配置窗口后左侧导航菜单选择 Docker Daemon。编辑窗口内的JSON串,填写加速器地址,如下所示:
    {
      "registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]
    }
编辑完成,点击 Apply 保存按钮,等待Docker重启并应用配置的镜像加速器。

再执行docker run hello-world命令就可以了。

五、查看运行的容器
docker ps #查看所有正在运行的容器 Container
docker ps -a #查看创建的所有容器
docker ps -l #查看最近创建的一个容器

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27256.html

相关文章

  • 慕课网_《一个docker化的java应用》学习总结

    摘要:时间年月日星期四说明本文部分内容均来自慕课网。仓库构建镜像的目的是为了在其机器上运行镜像程序。使用参数,冒号前面为主机端口,后面为容器端口。 时间:2017年04月27日星期四说明:本文部分内容均来自慕课网。@慕课网:http://www.imooc.com教学示例源码:无个人学习源码:无 第一章:课程介绍 1-1 课程介绍 Docker能火的原因 快速的持续集成 服务的弹性伸缩 部署...

    李涛 评论0 收藏0
  • 慕课网_《一个docker化的java应用》学习总结

    摘要:时间年月日星期四说明本文部分内容均来自慕课网。仓库构建镜像的目的是为了在其机器上运行镜像程序。使用参数,冒号前面为主机端口,后面为容器端口。 时间:2017年04月27日星期四说明:本文部分内容均来自慕课网。@慕课网:http://www.imooc.com教学示例源码:无个人学习源码:无 第一章:课程介绍 1-1 课程介绍 Docker能火的原因 快速的持续集成 服务的弹性伸缩 部署...

    vvpvvp 评论0 收藏0
  • Docker2篇:Docker 介绍

    摘要:根据镜像文件生成容器实例。容器是一个运行时环境,就是鲸鱼背上的一个个集装箱。这一层于我们典型的系统一样,包含加载器和内核。数据卷使得数据可以持久化和共享。 docker简介 1.docker是基于go语言实现主要目标是对对应组件的封装、分发、部署、运行等生命周期的管理,使应用程序及其运行环境能够做到一次封装,到处运行 2.docker为了解决运行环境和配置问题的软件容器,方便做持续集成...

    nevermind 评论0 收藏0
  • 容器Docker, Kubernetes和Kyma,以及Kyma对SAP的意义

    摘要:该标准主要分为运行时标准和容器镜像标准。事件注册好之后,使用微服务架构实现事件的监听者消费者。 大家好,今天非常高兴能给大家做一个关于Kyma的技术分享。这个session的audience主要是针对使用咱们成都研究院使用Java和nodejs等技术栈做微服务开发的同事们。对于在ABAP netweaver上做SAP传统开发的同事们来说,这个session可以让大家开阔一下眼界。 这是...

    xiaokai 评论0 收藏0
  • 容器Docker, Kubernetes和Kyma,以及Kyma对SAP的意义

    摘要:该标准主要分为运行时标准和容器镜像标准。事件注册好之后,使用微服务架构实现事件的监听者消费者。 大家好,今天非常高兴能给大家做一个关于Kyma的技术分享。这个session的audience主要是针对使用咱们成都研究院使用Java和nodejs等技术栈做微服务开发的同事们。对于在ABAP netweaver上做SAP传统开发的同事们来说,这个session可以让大家开阔一下眼界。 这是...

    jk_v1 评论0 收藏0

发表评论

0条评论

shmily

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<