Linux下安装DockerEngine-Community

2023-11-01

1. 介绍


Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件的速度。

Docker容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器。 容器更多的用于表示 软件的一个标准化单元。由于容器的标准化,因此它可以无视基础设施(Infrastructure)的差异,部署到任何一个地方。另外,Docker也为容器提供更强的业界的隔离兼容。

Docker 利用Linux核心中的资源分离机制,例如cgroups,以及Linux核心名字空间(namespaces),来创建独立的容器(containers)。这可以在单一Linux实体下运作,避免引导一个虚拟机造成的额外负担。Linux核心对名字空间的支持完全隔离了工作环境中应用程序的视野,包括行程树、网络、用户ID与挂载文件系统,而核心的cgroup提供资源隔离,包括CPU、存储器、block I/O与网络。从0.9版本起,Dockers在使用抽象虚拟是经由libvirt的LXC与systemd - nspawn提供界面的基础上,开始包括libcontainer库做为以自己的方式开始直接使用由Linux核心提供的虚拟化的设施。

总结

  1. Docker 是虚拟化容器技术。
  2. Docker 基于镜像,可以秒级启动各种容器。
  3. Docker 中每一种容器都是一个完整的运行环境,容器之间相互隔离。

2. Docker 镜像仓库


Docker 镜像仓库(市场):https://hub.docker.com/

3. 安装 Docker Engine-Community


Docker 安装说明文档地址:https://docs.docker.com/engine/install/centos/

以下操作均为 Linux 中。

3.1 卸载已经安装的 Docker

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

由于之前并没有安装过所以结果是这样的:
在这里插入图片描述

注意:由于当前用户为 vagrant ,而不是 root 用户,所以代码中的 sudo 是必须写的!否则会运行失败!

3.2 下载必要的包

$ sudo yum install -y yum-utils

结果如图所示:

在这里插入图片描述

3.3 设置Docker 的地址

以下地址三选一即可:

1.官方源地址(比较慢):

$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

2.阿里云地址(我用的这个):

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

3.清华大学源地址:

$ sudo yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

在这里插入图片描述

3.4 安装 Docker

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

docker-ce:安装 Docker-CE 的引擎。
docker-ce-cli:安装 Docker 的客户端。
containerd.io:安装 Docker 的容器。

过程中需要输入两次 y 来确定:
在这里插入图片描述

意思是:有多个 Docker 仓库吗? 如果启用了多个 Docker 仓库,则在未在 yum install 或 yum update 命令中指定版本的情况下,进行的安装或更新将始终安装最高版本,这可能不适合您的稳定性需求。

至此 Docker 安装完毕~

Docker 安装完默认未启动。并且已经创建好 docker 用户组,但该用户组下没有用户。

3.5 启动 Docker

$ sudo systemctl start docker

在这里插入图片描述
至此,我们的 Docker 就启动起来了~

我们可以检查一下,启动成功了没有:

//查看 docker 版本
$ docker -v
//查看 docker images
$ sudo docker images

在这里插入图片描述
如上图所示我们确实启动成功了~

4. 设置 Docker 自启动

由于安装完 Docker 之后并非自启动模式,所以我们要设置自启动,即随 Linux 系统一同启动

$ sudo systemctl enable docker

在这里插入图片描述

5. 完结撒花~~

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux下安装DockerEngine-Community 的相关文章

随机推荐

  • Excise_Thread2

    1 下列关于多线程中锁机制正确的是 A 关键字synchronized只能用于方法声明上 B 成员方法使用synchronized 那么当前方法的锁对象为当前方法所属的对象 C 静态方法使用synchronized 那么当前方法的锁对象为当
  • 【已解决】Nacos配置出现错误:Error creating bean with name‘memoryMonitor‘

    Nacos版本2 2 3 可先参考这个 https blog csdn net weixin 41195886 article details 127841630 解决建议都尝试一下 在user和password后边加个 0 老版本 未测试
  • O - Muddy roads

    Farmer John has a problem the dirt road from his farm to town has suffered in the recent rainstorms and now contains 1 l
  • centos7上搭建http服务器以及设置目录访问

    步骤 安装httpd服务 sudo yum install httpd Apache 的所有配置文件都位于 etc httpd conf 和 etc httpd conf d 网站的数据默认位于 var www 但如果你愿意 你可以改变它
  • HiveQL语法

    Hive SQL与标准SQL存在一些差异 但也是大同小异 HQL的基本语法为 中内容是可选的 中内容是必选的 表示内容二选一 全大写单词为关键字 建表语法 CREATE EXTERNAL TABLE IF NOT EXISTS table
  • 单片机实验(九)时钟0工作方式1中断法控制数码管0-59变化

    1 实验环境 win732位系统 keil2 proteus7 5sp3 2 实验目的 学习通过编程时钟0工作方式1中断法控制数码管0 59变化 3 实验连接图 4 实验代码 include
  • 用了Stream,代码丑爆了!姿势不对,别喷!

    程序员的成长之路 互联网 程序员 技术 资料共享 关注 阅读本文大概需要 20 分钟 来自 blog csdn net mu wind article details 109516995 Java8 的 Stream 流 加上 Lambda
  • C++11之显式转换操作符-explicit

    系列文章 C 11之正则表达式 regex match regex search regex replace C 11之线程库 Thread Mutex atomic lock guard 同步 C 11之智能指针 unique ptr s
  • 【python爬虫】14.Scrapy框架讲解

    文章目录 前言 Scrapy是什么 Scrapy的结构 Scrapy的工作原理 Scrapy的用法 明确目标与分析过程 代码实现 创建项目 代码实现 编辑爬虫 代码实现 定义数据 代码实操 设置 代码实操 运行 复习 前言 前两关 我们学习
  • ffmpeg分配编解码器的上下文的作用

    为什么分配编解码器的上下文 首先ffmpeg的解码器很多 但是当两个不同的流或者文件使用了同一个编解码器进行编解码 如果两个不同的流或者文件的数据都存在编解码器中 会造成编解码器的数据混乱 这时加入上下文保存两个流的数据 就不会造成编解码器
  • Keras-CNN、LSTM、文本分类、多分类、词向量

    一 本文目的 关于如何训练词向量 如何将文本数据组织成Keras的要求 本文不会讲述 本文的目的在于解决经典论文集中的CNN分类模型 如下图所示 从上图中可以看到 每次训练时 filter size的大小是变化的 包括3 4 5 而网上流传
  • 部署devstack

    OpenStack是一堆云计算平台组件 诸如存储 网络 镜像管理等 的合称 十分庞大且十分复杂 入门门槛不低 即便是为开发目的而进行的OpenStack部署也会让你折腾许久 甚至始终无法搭建成功 为此OpenStack为入门者和开发者推出了
  • ER图基本知识

    绘图软件 我用的是在线网站ProcessOn 什么是ER图 ER图就是实体关系图 矩形表示实体 椭圆形表示属性 菱形表示实体间的联系 实体 矩形 内写实体名 属性 椭圆形 直接与实体相连 联系 菱形 写明两个实体之间是如何关联的 同时在直线
  • OSPF——5种报文(图解)

    目录 Ospf头部 以下五个报文都会携带OSPF头部 Hello包 建立并维护邻居关系 DD报文 描述LSDB数据库的简要信息 LSR报文 请求LSA LSU报文 发送完整的LSA信息 LSAck报文 对LSU中LSA的确认 Ospf头部
  • Visual Studio 2019 的快捷键和视图布局使用

    文章目录 常见快捷键 视图布局 常见快捷键 Ctrl Shift 将选中的多行注释 或光标所在行 的单行注释 取消注释 这是此快捷键 Ctrl Shift Enter 重启一行 是从当前行的下面 重启一行 Ctrl Enter 重启一行 是
  • Vue-ref属性

    ref属性是什么 可以辅助开发者获取DOM元素或者组件的引用 什么意思 我们可以使用jQuery的 来获取DOM元素 或者在原生中使用querySelector等获取到DOM元素并对其做出相应的操作 在Vue中 我们可以使用ref属性来获取
  • 带你入手web入门小项目-留言板

    留言板功能的实现 目录展示 代码逻辑 用户登录 用户注册 留言板显示 删除留言 添加留言 修改留言 代码实现 本文承接上文你品 你细品留言板功能的总结 本人新手有代码可以优化的地方法 欢迎大家指出 已上传github 有需要的可以看一下 目
  • 前K个高频元素--堆

    LeetCode 前K个高频元素 给定一个非空的整数数组 返回其中出现频率前 k 高的元素 示例 1 输入 nums 1 1 1 2 2 3 k 2 输出 1 2 示例 2 输入 nums 1 k 1 输出 1 提示 你可以假设给定的 k
  • 全球根服务器地理位置,全球13个根服务器地址

    FORMERLY NS INTERNIC NET 3600000 NS A ROOT SERVERS NET A ROOT SERVERS NET 3600000 A 198 41 0 4 A ROOT SERVERS NET 360000
  • Linux下安装DockerEngine-Community

    1 介绍 Docker 是一个开放源代码软件 是一个开放平台 用于开发应用 交付 shipping 应用 运行应用 Docker允许用户将基础设施 Infrastructure 中的应用单独分割出来 形成更小的颗粒 容器 从而提高交付软件的