加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

10分钟快速掌握Docker必备基础知识

发布时间:2019-08-22 07:17:29 所属栏目:建站 来源:张君鸿
导读:Docker是时下热门的容器技术,相信作为一名开发人员,你一定听说过或者使用过,很多人会把Docker理解为一个轻量级虚拟机,但其实Docker与虚拟机(VM)是两种不同的计算机虚拟化技术,也有很多人会觉得,有了虚拟机,那为什么还要使用Docker呢? 带着心里的一

运行上面的命令之后,如果有如下图所示的输出结果,则说明安装已经成功了。

10分钟快速掌握Docker必备基础知识

Docker的基本概念

镜像(Image)、容器(Container)与仓库(Repository),这三个是docker中最基本也是最核心的概念,对这三个概念的掌握与理解,是学习docker的关键。

镜像(Image)

什么是Docker的镜像?

Docker本质上是一个运行在Linux操作系统上的应用,而Linux操作系统分为内核和用户空间,无论是Centos还是Ubuntu,都是在启动内核之后,通过挂载Root文件系统来提供用户空间的,而Docker镜像就是一个Root文件系统。

Docker镜像是一个特殊的文件系统,提供容器运行时所需的程序、库、资源、配置等文件,另外还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。

镜像是一个静态的概念,不包含任何动态数据,其内容在构建之后也不会被改变。

下面的命令是一些对镜像的基本操作,如下:

查看镜像列表

  1. # 列出所有镜像 
  2. docker image ls 

由于我们前面已经拉取了hello-world镜像,所以会输出下面的内容:

  1. REPOSITORY                                      TAG                 IMAGE ID            CREATED             SIZE 
  2. hello-world                                     latest              fce289e99eb9        7 months ago        1.84kB 

下面的命令也一样可以查看本地的镜像列表,而且写法更简洁。

  1. # 列表所有镜像 
  2. docker images 

从仓库拉取镜像

前面我们已经演示过使用docker pull命令拉取了hello-world镜像了,当然使用docker image pull命令也是一样的。

一般默认是从Docker Hub上拉取镜像的,Docker Hub是Docker官方提供的镜像仓库服务(Docker Registry),有大量官方或第三方镜像供我们使用,比如我们可以在命令行中输入下面的命令直接拉取一个Centos镜像:

  1. docker pull centos 

docker pull命令的完整写法如下:

  1. docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] 

拉取一个镜像,需要指定Docker Registry的地址和端口号,默认是Docker Hub,还需要指定仓库名和标签,仓库名和标签唯一确定一个镜像,而标签是可能省略,如果省略,则默认使用latest作为标签名,另外,仓库名则由作者名和软件名组成。

那么,我们上面使用centos,那是因为省略作者名,则作者名library,表示Docker官方的镜像,所以上面的命令等同于:

  1. docker pull library/centos:latest 

因此,如果拉取非官方的第三方镜像,则需要指定完整仓库名,如下:

  1. docker pull mysql/mysql-server:latest 

运行镜像

使用docker run命令,可以通过镜像创建一个容器,如下:

  1. docker run -it centos /bin/bash 

删除镜像

当本地有些镜像我们不需要时,那我们也可以删除该镜像,以节省存储空间,不过要注意,如果有使用该镜像创建的容器未删除,则不允许删除镜像。

  1. # image_name表示镜像名,image_id表示镜像id 
  2. dockere image rm image_name/image_id 

删除镜像的快捷命令:

  1. docker rmi image_name/image_id 

好了,关于Docker镜像的相关知识,我们就简单地介绍到这里,有机会的话,我们单独写一篇文章来谈谈,特别构建Docker镜像部分的相关知识,有必要深入再学习一下。

容器(Container)

Docker的镜像是用于生成容器的模板,镜像分层的,镜像与容器的关系,就是面向对象编程中类与对象的关系,我们定好每一个类,然后使用类创建对象,对应到Docker的使用上,则是构建好每一个镜像,然后使用镜像创建我们需要的容器。

启动和停止容器

启动容器有两种方式,一种是我们前面已经介绍过的,使用docker run命令通过镜像创建一个全新的容器,如下:

  1. docker run hello-world 

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读