当前位置:   article > 正文

linux docker安装及报错处理_linux安装docker出现问题

linux安装docker出现问题

一、Linux安装docker

1.1 前提

要求Linux内核(kernel) 版本大于等于3.8。(kernel version >=3.8)。

查看当前系统内核版本

uname -a | awk '{split($3,arr,"-");print arr[1]}'

1.2 linux 安装docker

Centos安装docker,官网地址:

Install Docker Engine on CentOS | Docker Documentation

ubuntu安装docker,官网地址: 

Install Docker Engine on Ubuntu | Docker Documentation

其他系统:

 Install Docker Engine | Docker Documentation

以Centos安装docker为例:

1.2.1 卸载旧版本docker(如果首次安装,可忽略此步骤)

  1. sudo yum remove docker \
  2. docker-client \
  3. docker-client-latest \
  4. docker-common \
  5. docker-latest \
  6. docker-latest-logrotate \
  7. docker-logrotate \
  8. docker-engine

 1.2.2 安装 Docker Engine

更新软件包列表:使用适用于您的Linux发行版的包管理器,运行以下命令更新软件包列表:

对于Debian/Ubuntu系统:

sudo apt update

对于CentOS/RHEL系统:

sudo yum update

Docker Engine有多种安装方法,以下是三种常见的安装方法:

方法一:Docker官方仓库(推荐):

1、这种方法涉及设置Docker的官方仓库,并从中安装Docker。这样做可以方便安装、自动更新,并简化了Docker的管理。

方法二:通过RPM包手动安装

  • 如果你有特定的要求或需要在无网络访问的系统(例如空隔离系统)上安装Docker,则可以手动下载RPM包并进行安装。
  • 你可以从Docker网站或安全的内部来源获取RPM包。
  • 请注意,管理升级将需要手动干预。

方法三:便利脚本(适用于测试和开发环境):

  • Docker提供了便利脚本,可以自动化安装过程,快速方便地设置Docker用于测试和开发目的。
  • 不建议在生产环境中使用这些脚本,但它们对于快速入门非常有用。
  • 这些脚本可在Docker的GitHub存储库中找到,并在Docker文档中提供了详细的使用说明

我们这里采用方式一,Docker官方仓库安装。

设置软件仓库 安装yum-utils包(提供yum-config-manager实用程序)并设置软件仓库。

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

1.2.3安装DOCKER引擎(两种方式)

1.2.3.1方式一:安装特定版本的(不推荐)

0、更新系统:

sudo yum update


添加 Docker 软件源:

  1. sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
  2. [dockerrepo]
  3. name=Docker Repository
  4. baseurl=https://download.docker.com/linux/centos/7/x86_64/stable/
  5. enabled=1
  6. gpgcheck=1
  7. gpgkey=https://download.docker.com/linux/centos/gpg
  8. EOF

1、要安装特定的版本,请首先列出仓库中可用的版本:

列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序

yum list docker-ce --showduplicates | sort -r

中间这一列数据,就是版本号

2、安装特定版本。先找到我们需要的版本号,如 3:24.0.2-1.el7

将<VERSION_STRING>替换为所需的版本,然后运行以下命令进行安装:

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

举例安装docker-ce-3:24.0.2-1.el7 的版本:

  1. sudo yum install docker-ce-3:24.0.2 docker-ce-cli-3:24.0.2 containerd.io docker-buildx-plugin docker-compose-plugin

这个命令安装了Docker,但不会启动Docker。它还创建了一个docker用户组,但默认情况下不会将任何用户添加到该组中。

3、启动 Docker。

sudo systemctl start docker

4、通过运行 hello-world 镜像来验证 Docker Engine 的安装是否成功。

sudo docker run hello-world

这个命令会下载一个测试镜像,并在容器中运行它。当容器运行时,它会打印一条确认消息并退出。

您现在已成功安装并启动了 Docker Engine。

1.2.3.2方式二:安装最新版本的(推荐)

 0、更新系统:

sudo yum update


添加 Docker 软件源:

  1. sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
  2. [dockerrepo]
  3. name=Docker Repository
  4. baseurl=https://download.docker.com/linux/centos/7/x86_64/stable/
  5. enabled=1
  6. gpgcheck=1
  7. gpgkey=https://download.docker.com/linux/centos/gpg
  8. EOF

1、安装 Docker:

sudo yum install docker-ce

2、启动 Docker

sudo systemctl start docker

3、通过运行 hello-world 镜像来验证 Docker Engine 的安装是否成功。

sudo docker run hello-world

这个命令会下载一个测试镜像,并在容器中运行它。当容器运行时,它会打印一条确认消息并退出。

您现在已成功安装并启动了 Docker Engine。

二、报错处理

2.1 内存空间不足,组件下载失败

内存空间不足,组件下载失败。

Total download size: 47 M
Installed size: 152 M
Is this ok [y/d/N]: Exiting on user command
Your transaction was saved, rerun it with:
 yum load-transaction /tmp/yum_save_tx.2023-07-03.10-35.KF4LXD.yumtx

解决办法:

1、清理内存空间

2、继续下载:yum load-transaction /tmp/yum_save_tx.2023-07-03.10-35.KF4LXD.yumtx

2.2 docker版本冲突

服务器本身有docker,又安装了一个新的docker,导致报错。

Running transaction check Running transaction test Transaction check error: file /usr/bin/docker from install of docker-ce-cli-1:24.0.2-1.el7.x86_64 conflicts with file from package docker-common-2:1.13.1-209.git7d71120.el7.centos.x86_64 file /usr/bin/dockerd from install of docker-ce-3:24.0.2-1.el7.x86_64 conflicts with file from package docker-common-2:1.13.1-209.git7d71120.el7.centos.x86_64 Error Summary -------------

由于新版本的docker-ce-clidocker-ce与旧版本的docker-common发生冲突导致的问题。这可能是由于之前安装的Docker遗留文件或错误配置引起的。

解决办法:

1、卸载旧版本Docker:运行以下命令卸载已安装的Docker版本:

sudo yum remove docker docker-engine docker.io

2、清理残留文件:运行以下命令删除任何已安装Docker的残留文件:

sudo rm -rf /var/lib/docker

3、安装Docker依赖项:运行以下命令安装Docker所需的依赖项:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

4、添加Docker源:运行以下命令添加Docker的yum软件源: 

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

5、清除Yum缓存:运行以下命令清除Yum缓存: 

sudo yum clean all

6、安装Docker引擎:运行以下命令安装最新版本的Docker引擎: 

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

7、启动Docker服务:运行以下命令启动Docker服务: 

sudo systemctl start docker

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/176638?site
推荐阅读
相关标签
  

闽ICP备14008679号