Docker 入门 (一)
  pDfpeWmG3ZJk 2023年11月02日 41 0

一、认识 Docker

1. 概念

  Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 Docker 技术的三大核心概念,分别是:镜像 Image、容器 Container、仓库 Repository。 镜像是一个可执行包,其包含运行应用程序所需的代码、运行时、库、环境变量和配置文件,容器是镜像的运行时实例。

2. 虚拟化

  1. 虚拟机:虚拟化硬件 虚拟机 Virtual Machine 指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。每个虚拟机都有独立的 CMOS、硬盘和操作系统,可以像使用实体机一样对虚拟机进行操作。 虚拟机技术的代表,是 VMWare 和 OpenStack

  2. 容器:将操作系统层虚拟化,是一个标准的软件单元

  • 随处运行: 容器可以将代码与配置文件和相关依赖库进行打包,从而确保在任何环境下的运行都是一致的
  • 高资源利用率: 容器提供进程级的隔离,因此可以更加精细地设置 CPU 和内存的使用率,进而更好地利用服务器的计算资源
  • 快速扩展: 每个容器都可作为单独的进程予以运行,并且可以共享底层操作系统的系统资源,这样一来可以加快容器的启动和停止效率
  1. 区别与联系   与虚拟机相比,容器更轻量且速度更快,因为它利用了 Linux 底层操作系统在隔离的环境中运行。虚拟机的 Hypervisor 创建了一个非常牢固的边界,以防止应用程序突破它,而容器的边界不那么强大。   物理机部署不能充分利用资源,造成资源浪费。虚拟机方式部署,虚拟机本身会占用大量资源,导致资源浪费,另外虚拟机性能也很差。而容器化部署比较灵活,且轻量级,性能较好。   虚拟机属于虚拟化技术,而 Docker 这样的容器技术,属于轻量级的虚拟化

3. Docker 轻量级的原因?

  相信你也会有这样的疑惑:为什么 Docker 启动快?如何做到和宿主机共享内核?   当我们请求 Docker 运行容器时,Docker 会在计算机上设置一个资源隔离的环境。然后将打包的应用程序和关联的文件复制到 Namespace 内的文件系统中,此时环境的配置就完成了。之后 Docker 会执行我们预先指定的命令,运行应用程序。   镜像不包含任何动态数据,其内容在构建之后也不会被改变。

二、安装 Docker

1、在线安装

可以选择国内的一些源地址:

  • 阿里云
$ sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 清华大学源
$ sudo yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

安装 Docker Engine-Community 安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:

$ sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

2、离线安装

  • 阿里云镜像:
    • http://mirrors.aliyun.com/docker-ce/linux/centos/7.5/x86_64/stable/Packages/?spm=a2c6h.25603864.0.0.731f3c191yFII5
  • Docker 官方镜像:
    • https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
  1. 在下载页面分别下载rpm文件:
  • docker-ce-18.06.0.ce-3.el7.x86_64.rpm
  • docker-ce-cli-18.09.0-3.el7.x86_64.rpm
  • containerd.io-1.2.6-3.3.el7.x86_64.rpm
  • docker-compose-plugin-2.6.0-3.el7.x86_64.rpm
  • docker-ce-rootless-extras-20.10.0-3.el7.x86_64.rpm
  1. 文件下载完成后上传至目标服务器,使用如下命令进行安装:
rpm  -Uvh  --force  --nodeps  *.rpm
  1. 安装完成后验证:
systemctl start docker
s	ystemctl status docker
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论