当前位置: 首页 > news >正文

Centos 7 安装 Docker Enginee

文章目录

  • Centos 安装 Docker Enginee
    • 系统要求
    • 卸载旧版本
    • 使用 RPM 仓库
      • 设置 Docker 仓库
      • 安装 Docker Enginee
      • 升级 Docker Enginee
    • 卸载 Docker

Centos 安装 Docker Enginee

要在 Centos 安装 Docker Enginee,需要满足以下要求:

系统要求

  • CentOS 7
  • CentOS 8 (stream)
  • CentOS 9 (stream)

另外,必须要启用 centos-extra 仓库。此仓库默认是启用的,如果你曾经禁用过,可以使用如下命令启用:

yum install epel-release

卸载旧版本

使用以下命令卸载旧版本:

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

如果没有这些旧的包,yum 可能会提示你如下内容,跳过即可。
No Match for argument: docker
No Match for argument: docker-client
No Match for argument: docker-client-latest
No Match for argument: docker-common
No Match for argument: docker-latest
No Match for argument: docker-latest-logrotate
No Match for argument: docker-logrotate
No Match for argument: docker-engine
No Packages marked for removal

清除存储在 /var/lib/docker/ 目录下的旧数据,因为上面的操作不会自动移除这些内容。

有如下三种方式安装 Docker Enginee,你可以根据需要选择其中一个:

  • (推荐)使用 Docker 的 Yum 仓库安装
  • 下载 RPM 软件包然后手动安装,常用于无法联网的系统
  • 在开发和测试环境,使用自动化安装脚本安装 Docker Enginee

使用 RPM 仓库

如果你是第一次在你正在使用的机器上安装 Docker,需要先设置 Docker 仓库。

设置 Docker 仓库

安装 yum-utils 包,yum-utils 提供了 yum-config-manager 工具,可以设置仓库:

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker Enginee

  1. 安装 Docker Engine, containerd, and Docker Compose:

    最新版

    如果要安装最新版,直接执行以下命令即可:

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

    指定版本

    要安装指定版本,需要查询版本:

    yum list docker-ce --showduplicates | sort -rdocker-ce.x86_64    3:24.0.0-1.el8    docker-ce-stable
    docker-ce.x86_64    3:23.0.6-1.el8    docker-ce-stable
    <...>
    

    接着安装指定版本的软件包:

    sudo yum install docker-ce-24.0.6-1.el8 docker-ce-cli-24.0.6-1.el8 containerd.io docker-buildx-plugin docker-compose-plugin
    

    解释一下 yum list docker-ce --showduplicates | sort -r 命令的结果:
    第一列是软件包的名称加上支持的处理器的位数,以英文点号 . 分隔
    第二列是软件包的版本
    拼接方式
    软件包名称 + - + 版本,例:docker-ce-24.0.6-1.el8
    注意
    官网说明是软件包名拼接上版本就是要安装指定版本的软件包,但经测试有时(对于 Docker、Nginx,其他软件未尝试。)会失败;比如安装 Docker 后启动 Docker 服务时会提示 Unit docker.service could not be found 等类似的错误。
    解决方式
    拼接第二列的版本时,如果版本中有冒号,只需要拼接冒号后面的内容作为版本号

  2. 启动 Docker

    sudo systemctl start docker
    
  3. 通过 hello-world 镜像验证 Docker 是否安装成功:

    sudo docker run hello-world
    

    此命令将下载 hello-world 镜像并启动一个容器。容器启动后将打印一行信息并退出。

升级 Docker Enginee

升级的方式同 安装 Docker Enginee ,只需要选择一个更新的版本来安装即可。

卸载 Docker

  1. 卸载 Docker Enginee、Docker Cli、containerd 和 Docker Compose:

    sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
    
  2. 镜像、容器以及卷不会自动删除,需要执行以下命令来删除它们:

    sudo rm -rf /var/lib/docker
    sudo rm -rf /var/lib/containerd
    

相关文章:

  • rabbitmq-3.8.15集群、集群镜像模式安装部署
  • 【Python3】【力扣题】202. 快乐数
  • 使用Golang与Web3.js进行区块链开发
  • 体育竞技分析
  • 前端Vue页面中如何展示本地图片
  • 4、QtCharts 做心电图
  • Java 入门指南:使用 Docker 创建容器化 Spring Boot 应用程序
  • css样式中 before、after 里面的 content 乱码
  • 修改svc的LoadBalancer的IP引发的惨案
  • C++11的lambda表达式
  • nlp之加载电商评论集
  • 真机环境配置教程
  • 项目进度延误,危机管理5大注意事项
  • 评论功能的选择难题:数据结构如何选定?
  • 什么是React中的有状态组件(stateful component)和无状态组件(stateless component)?
  • [deviceone开发]-do_Webview的基本示例
  • 2017-08-04 前端日报
  • isset在php5.6-和php7.0+的一些差异
  • JS笔记四:作用域、变量(函数)提升
  • Linux gpio口使用方法
  • Mybatis初体验
  • 关于for循环的简单归纳
  • 官方解决所有 npm 全局安装权限问题
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 微信开放平台全网发布【失败】的几点排查方法
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 异步
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • ​用户画像从0到100的构建思路
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (70min)字节暑假实习二面(已挂)
  • (poj1.3.2)1791(构造法模拟)
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (九十四)函数和二维数组
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (一)Linux+Windows下安装ffmpeg
  • (转)大道至简,职场上做人做事做管理
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET 材料检测系统崩溃分析
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .net下简单快捷的数值高低位切换
  • @angular/cli项目构建--http(2)
  • @ModelAttribute注解使用
  • []使用 Tortoise SVN 创建 Externals 外部引用目录
  • [20180312]进程管理其中的SQL Server进程占用内存远远大于SQL server内部统计出来的内存...
  • [ArcPy百科]第三节: Geometry信息中的空间参考解析
  • [BJDCTF2020]The mystery of ip
  • [BUUCTF]-PWN:wustctf2020_number_game解析(补码,整数漏洞)
  • [CISCN 2023 初赛]go_session
  • [flask] flask的基本介绍、flask快速搭建项目并运行