锋盈数科-知识库 Logo
首页
软件开发
计算机基础
Hello Halo
新手必读
关于本知识库
登录 →
锋盈数科-知识库 Logo
首页 软件开发 计算机基础 Hello Halo 新手必读 关于本知识库
登录
  1. 首页
  2. 软件开发
  3. 尚硅谷谷粒商城项目笔记——三、安装docker【电脑CPU:AMD】

尚硅谷谷粒商城项目笔记——三、安装docker【电脑CPU:AMD】

0
  • 软件开发
  • 发布于 2024-08-17
  • 10 次阅读
黄健
黄健

三、安装docker

注意:

因为电脑是AMD芯片,自己知识储备不够,无法保证和课程中用到的环境一样,所以环境都是自己根据适应硬件软件环境重新配置的,这里的虚拟机使用的是VMware。

首先关闭防火墙和安全策略

systemctl stop firewalld.service
setenforce 0

通过下面步骤,可以在Linux系统上使用阿里云镜像加速源成功安装Docker。

1添加阿里云 Docker 仓库:

删除已有的 Docker 仓库文件,如果存在的话:

sudo rm -f /etc/yum.repos.d/docker*.repo

添加阿里云的 Docker 仓库地址,创建一个新的 Docker 仓库配置文件:

sudo tee /etc/yum.repos.d/docker-ce.repo <<-'EOF'
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
EOF

2安装 yum-utils(如果系统中没有安装):

sudo yum install -y yum-utils

3添加阿里云镜像源:

使用 yum-config-manager 添加阿里云镜像源:

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

4安装 Docker:

安装 Docker 及其依赖:

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

[!NOTE]

如果在第4步出现警告或错误,按照以下步骤完成(有三种方法推荐第2种):


出现这个错误是因为在安装 Docker 时,系统检测到存在版本冲突或依赖问题。以下是一些解决方法:

方法一:使用 dnf 替换 yum

在某些情况下,使用 dnf 而不是 yum 可以解决依赖问题。首先尝试使用 dnf 安装 Docker:

sudo dnf install docker-ce docker-ce-cli containerd.io -y

方法二:解决依赖冲突

如果 dnf 命令不起作用,可以尝试手动解决依赖冲突。以下是一些步骤:

  1. 移除冲突的软件包 :
    如果系统中已经安装了 runc 或其他相关软件包,可能需要先移除它们:

    sudo dnf remove runc
    
  2. 清理缓存 :
    清理 yum 缓存,确保所有数据都是最新的:

    sudo dnf clean all
    
  3. 重新添加阿里云仓库 :
    重新添加阿里云 Docker 仓库:

    sudo tee /etc/yum.repos.d/docker-ce.repo <<-'EOF'
    [docker-ce-stable]
    name=Docker CE Stable - $basearch
    baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/stable
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
    EOF
    
  4. 重新安装 Docker :
    再次尝试安装 Docker:这里看上面的步骤,任然使用yum原下载

    sudo dnf install docker-ce docker-ce-cli containerd.io -y
    

方法三:使用 --nobest 选项

如果上述方法仍然不起作用,可以尝试在安装命令中添加 --nobest 选项,这将忽略最佳候选软件包,可能会绕过一些依赖问题:

sudo dnf install docker-ce docker-ce-cli containerd.io --nobest -y

方法四:手动解决依赖问题

如果问题依然存在,可能需要手动解决依赖问题。首先查看具体的错误信息:

sudo dnf info docker-ce

然后根据提示手动安装或更新相关的依赖软件包。

方法五:使用 Docker 官方安装脚本

最后,如果所有方法都不起作用,可以尝试使用 Docker 官方提供的安装脚本:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

这个脚本会自动处理依赖问题,并安装最新版本的 Docker。

希望这些方法能帮助我解决问题。如果问题依然存在,请提供更多的错误信息,以便进一步分析。

5启动并启用 Docker 服务:

安装完成后,启动 Docker 服务,并设置开机自启:

sudo systemctl start docker
sudo systemctl enable docker

6验证 Docker 是否安装成功:

检查 Docker 版本以确认是否安装成功:

docker --version

7配置阿里云镜像加速器:

登录阿里云控制台,获取个人专属的加速器地址,并在 /etc/docker/daemon.json 文件中配置加速器:

[!NOTE]

  • 登录阿里云官网找到镜像仓库加速

    • 阿里云官网
  • 选择产品>>>容器 >>>容器镜像服务ACR

  • 点击管理控制台

  • 镜像工具>>>镜像加速器

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://你的加速器地址.mirror.aliyuncs.com"]
}
EOF
###根据上面的note内容操作!!!

8重启 Docker 服务:

应用配置更改,重启 Docker 服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

9注意需要配置防火墙和安全策略,我这里只是学习项目,所以直接关闭防火墙和安全策略

sudo systemctl stop firewall.service
sudo setenforce 0

大学生制作不易,各位愿意的话可以打赏,不愿意的话也没关系,学习最重要。最后,哪里写的不合适请告诉我,我弄明白后再修正,谢谢!

原文链接: https://blog.csdn.net/B6665X/article/details/140953437

标签: #docker 18 #软件开发 1171
相关文章

万字:支付“核心系统”详解 2024-11-02 15:33

专栏作者:隐墨星辰 \| 主编:陈天宇宙 这篇文章也尝试化繁为简,探寻支付系统的本质,讲清楚在线支付系统最核心的一些概念和设计理念。 虽然支付行业已经过了风头最劲的时光,但跨境支付仍然在蓬勃发展,每年依然有很多新人进入这个行业,这篇文章尝试为这些刚入行的新人提供一点帮助。 文章只介绍一些支付行业十几

资深支付架构师视角:实战从问题定义到代码落地的完整套路 2024-11-02 15:33

前言 今天从一个实际案例入手,介绍站在架构师的角度,如何识别并定义问题,提炼需求,技术方案选型,再到详细设计,最后利用AI的能力协助写出核心的代码,验证与调优。 解决问题存在一定的模式,也可以称之为框架,总结出自己的思考和解题框架,以后再碰到同类型的问题就可以如庖丁解牛一样容易。 很多年前,我写代码

Spring 实现 3 种异步接口 2024-10-18 09:07

大家好,我是苏三~ 如何处理比较耗时的接口? 这题我熟,直接上异步接口,使用 Callable、WebAsyncTask 和 DeferredResult、CompletableFuture等均可实现。 但这些方法有局限性,处理结果仅返回单个值。在某些场景下,如果需要接口异步处理的同时,还持续不断地

重学SpringBoot3-集成Redis(五)之布隆过滤器 2024-10-08 11:24

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Redis(五)之布隆过滤器 1. 什么是布隆过滤器? * 基本概念 适用场景 2. 使用 Redis 实现布隆过滤器 * 项目依赖 Redis 配置

设计模式第16讲——迭代器模式(Iterator) 2024-10-08 11:24

一、什么是迭代器模式 迭代器模式是一种行为型设计模式,它提供了一种统一的方式来访问集合对象中的元素,而不是暴露集合内部的表示方式。简单地说,就是将遍历集合的责任封装到一个单独的对象中,我们可以按照特定的方式访问集合中的元素。 二、角色组成 抽象迭代器(Iterator):定义了遍历聚合对象所需的方法

vue2路由和vue3路由区别及原理 2024-10-08 11:24

一、Vue2 与 Vue3 路由的区别 1. 创建路由实例方式的不同 Vue 2 中,通过 Vue.use() 注册路由插件,并通过 new VueRouter() 来创建路由实例。 import Vue from 'vue';import VueRouter from 'vue-router';i

目录

IT 外包服务商

  • 意见投递
  • zyf6619

软件开发应用

主菜单

  • 首页
  • 软件开发
  • 计算机基础
  • Hello Halo
  • 新手必读
  • 关于本知识库
Copyright © 2024 your company All Rights Reserved. Powered by Halo.