前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker学习笔记(一)

Docker学习笔记(一)

作者头像
木字楠
发布2022-11-15 16:46:45
2670
发布2022-11-15 16:46:45
举报
文章被收录于专栏:木字楠の空间

一款产品的出现会有两套甚至多套环境,比如生产环境,测试环境等等。

前言

前提:学习 Docker 的前提是你要对 Linux 有一定了解,常用指令熟练应用。

1、Docker概述

1-1、什么是Docker?

在这里插入图片描述
在这里插入图片描述

Docker 是一个开源的应用容器引擎,是一种新兴的虚拟化技术,跟传统的虚拟化方式相比具有众多的优势。能够一定程度上的代替传统虚拟机,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

1-2、docker中的基本概念

镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。

容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

Docker 采用客户端-服务器模式(C/S模式),通过使用远程API来管理和控制创建Docker容器

1-3、docker 有什么优势?

首先我们来看一下Docker 和 VM虚拟机的对比表:

在这里插入图片描述
在这里插入图片描述

通过对比,不难看出Docker不论是在启动时间还是在运行效率或是其他方面都远远强于VM虚拟机。

docker 的基本结构:

在这里插入图片描述
在这里插入图片描述
  • 一致的运行环境:Docker 的镜像提供了除内核外完整的运行时环境,确保了应用运行环境一致性。
  • 响应式部署和扩展:Docker 是基于容器的平台,允许高度可移植的工作负载。Docker 容器可以在开发人员的本机上,数据中心的物理或虚拟机上,云服务上或混合环境中运行。除此之外他还说可移植性和轻量级的特性,还可以使您轻松地完成动态管理的工作负担,并根据业务需求指示,实时扩展或拆除应用程序和服务。
  • 在同一硬件上运行更多工作负载:Docker 轻巧快速。它为基于虚拟机管理程序的虚拟机提供了可行、经济、高效的替代方案,因此您可以利用更多的计算能力来实现业务目标。Docker 非常适合于高密度环境以及中小型部署,而您可以用更少的资源做更多的事情。

2、Centos 7下安装docker

进入到root模式之后,首先检查虚拟机中是否已经安装了Docker

代码语言:javascript
复制
docker version
在这里插入图片描述
在这里插入图片描述

若没有没查询到版本信息说明虚拟机中没有安装Docker,反之则执行下面的命令(卸载之前安装的Docker):

代码语言:javascript
复制
 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装所需的软件包:yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。yum-config-manager ,下载速度会快非常非常多!

代码语言:javascript
复制
 sudo yum install -y yum-utils

 sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装docker

代码语言:javascript
复制
sudo yum install docker-ce docker-ce-cli containerd.io  //这里默认下载最新版本的docker

如果要安装指定版本的docker则选择使用下面的命令:

代码语言:javascript
复制
$ yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64  3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64  18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64  18.06.0.ce-3.el7                    docker-ce-stable

至此docker的安装已经完成!

3、docker 运行原理

3-1、运行流程:

我们来看一下docker运行流程:

在这里插入图片描述
在这里插入图片描述

3-2、运行原理

Docker 是 客户端-服务器模式(C/S模式),Docker-Client 可以通过Api调用Docker-Server,Docker-Server接受到Docker-Client的指令之后就会执行该指令。

在这里插入图片描述
在这里插入图片描述

总结

树苗如果因为怕痛而拒绝修剪,那就永远不会成材。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一款产品的出现会有两套甚至多套环境,比如生产环境,测试环境等等。
  • 前言
  • 1、Docker概述
    • 1-1、什么是Docker?
      • 1-2、docker中的基本概念
        • 1-3、docker 有什么优势?
        • 2、Centos 7下安装docker
        • 3、docker 运行原理
          • 3-1、运行流程:
            • 3-2、运行原理
            • 总结
            相关产品与服务
            容器镜像服务
            容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档