Centos安装Docker、Docker-compose

打印 上一主题 下一主题

主题 945|帖子 945|积分 2839

Docker的搭建

Docker版本要求

要求 CentOs7 系统的内核版本高于 3.10,可通过如下指令查看版本
  1. uname -r
复制代码
更新yum

需先安装必要的软件包,yum-utils、device-mapper-persistent-data、lvm2
yum-utils:提供一个yum-config-manager单元,device-mapper-persistent-data和lvm2用于储存设备映射(devicemapper)必须的两个软件包
  1. sudo yum update
  2. sudo yum install -y yum-utils device-mapper-persistent-data lvm2
复制代码
配置稳定的仓库

配置阿里云仓库,仓库配置会保存到/etc/yum.repos.d/docker-ce.repo文件中
  1. sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
复制代码
更新Yum安装的相关Docker软件包
  1. sudo yum makecache fast#会出错
  2. # centos8使用这个命令,centos8无fast参数
  3. sudo yum makecache
复制代码
安装Docker

安装步骤


  • 查看版本,可指定版本安装
    yum list docker-ce --showduplicates | sort -r
  • 安装
    yum install -y docker-ce docker-ce-cli
出现错误:problem with installed package buildah-1.22.3-2.module_el8.5.0+911+f19012f9.x86_64

错误信息
  1. Repository extras is listed more than once in the configuration
  2. Last metadata expiration check: 0:08:23 ago on Tue 18 Oct 2022 13:44:28 CST.
  3. Error:
  4. Problem: problem with installed package buildah-1.22.3-2.module_el8.5.0+911+f19012f9.x86_64
  5.   - package buildah-1.22.3-2.module_el8.5.0+911+f19012f9.x86_64 requires runc >= 1.0.0-26, but none of the providers can be installed
  6.   - package containerd.io-1.4.3-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  7.   - package containerd.io-1.4.3-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  8.   - package docker-ce-3:20.10.18-3.el8.x86_64 requires containerd.io >= 1.4.1, but none of the providers can be installed
  9.   - package containerd.io-1.4.3-3.2.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  10.   - package containerd.io-1.4.3-3.2.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  11.   - package containerd.io-1.4.10-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  12.   - package containerd.io-1.4.10-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  13.   - package containerd.io-1.4.11-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  14.   - package containerd.io-1.4.11-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  15.   - package containerd.io-1.4.12-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  16.   - package containerd.io-1.4.12-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  17.   - package containerd.io-1.4.13-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  18.   - package containerd.io-1.4.13-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  19.   - package containerd.io-1.4.4-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  20.   - package containerd.io-1.4.4-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  21.   - package containerd.io-1.4.6-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  22.   - package containerd.io-1.4.6-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  23.   - package containerd.io-1.4.8-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  24.   - package containerd.io-1.4.8-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  25.   - package containerd.io-1.4.9-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  26.   - package containerd.io-1.4.9-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  27.   - package containerd.io-1.5.10-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  28.   - package containerd.io-1.5.10-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  29.   - package containerd.io-1.5.11-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  30.   - package containerd.io-1.5.11-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  31.   - package containerd.io-1.6.4-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  32.   - package containerd.io-1.6.4-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  33.   - package containerd.io-1.6.6-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  34.   - package containerd.io-1.6.6-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  35.   - package containerd.io-1.6.7-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  36.   - package containerd.io-1.6.7-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  37.   - package containerd.io-1.6.8-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  38.   - package containerd.io-1.6.8-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  39.   - cannot install the best candidate for the job
  40.   - package runc-1.0.0-56.rc5.dev.git2abd837.module_el8.3.0+569+1bada2e4.x86_64 is filtered out by modular filtering
  41.   - package runc-1.0.0-66.rc10.module_el8.5.0+1004+c00a74f5.x86_64 is filtered out by modular filtering
  42.   - package runc-1.0.0-72.rc92.module_el8.5.0+1006+8d0e68a2.x86_64 is filtered out by modular filtering
  43. (try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
复制代码
解决办法


  • 删除podman buildah
  1. yum erase podman buildah
复制代码

  • 查看版本,可指定版本安装
  1. yum list containerd.io --showduplicates | sort -r
复制代码

  • 安装containerd.io
  1. yum install -y containerd.io
复制代码

  • 再安装docker-ce docker-ce-cli
  1. yum install -y docker-ce docker-ce-cli
复制代码
启动docker


  • 设置开机自启动
  1. sudo systemctl start docker
  2. sudo systemctl enable docker
复制代码

  • 启动
  1. sudo systemctl start docker
复制代码

  • 验证
  1. docker -v
复制代码
  1. **出现以下文字,说明安装成功**
复制代码
  1. Docker version 20.10.18, build b40c2f6
复制代码
卸载docker
  1. yum list installed | grep docker
  2. yum remove 移除需要卸载的组件
  3. yum remove docker \  
  4. docker-client \  
  5. docker-client-latest \  
  6. docker-common \  
  7. docker-latest \  
  8. docker-latest-logrotate \  
  9. docker-logrotate \  
  10. docker-selinux \  
  11. docker-engine-selinux \  
  12. docker-engine
  13. rm -rf /etc/systemd/system/docker.service.d
  14. rm -rf /var/lib/docker
  15. rm -rf /var/run/docker
复制代码
安装docker-compose
  1. yum install python-pip python-dev
  2. pip install docker-compose
  3. # centos8 使用以下命令安装
  4. yum install epel-release python3-pip python3-devel
  5. pip3 install --upgrade pip
  6. pip3 install docker-compose
复制代码
出现以下文字,说明安装成功
  1. docker-compose -v
  2. docker-compose version 1.29.2, build unknown
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

东湖之滨

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表