【Docker】安装 Docker(Server-Centos、GUI-Windows11)—— 超详细教程

一、各版本平台支持情况

1、Server 版本


2、桌面版本


二、Server 版本安装(Centos)

1、安装依赖

(1)支持的操作系统

CentOS 7:推荐
CentOS 8 (stream)
CentOS 9 (stream)

(2)支持的 CPU

ARM
X86_64:推荐

2、安装 Docker

(1)确认操作系统


(2)确认 CPU 架构


(3)卸载旧版本

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

(4)卸载历史版本

#删除机器上的包
sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras#执行卸载
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd#这个是我修改后的目录,需要根据实际情况设置,也要删除
sudo rm -rf /data/var/lib/docker
sudo rm -rf /etc/docker/daemon.json

(5)配置仓库

由于 Docker 官方镜像无法访问,所以直接访问会出现以下问题:

可以选用阿里的仓库,采用国内源,下载速度也会快一些:


(6)安装最新版本

yum install -y docker-ce docker-ce-cli containerd.io dockerbuildx-plugin docker-compose-plugin


(7)启动 docker

#配置加载
sudo systemctl daemon-reload#启动服务
sudo systemctl start docker#开启启动
sudo systemctl enable docker#查看服务状态
sudo systemctl status docker


(8)检查安装结果查看版本


(9)更详细查看 docker 信息


(10)执行 hello-world 可以看到 Hello from Docker,表面 docker 服务正常

如果出现 i/o timeout 错误的话,主要是由于网络连接不稳定或者服务器响应慢导致的。当 Docker 尝试从镜像仓库拉取镜像时,如果在规定时间内没有得到响应,就会出现 i/o timeout 错误。错误的根源在于网络连接和镜像仓库的响应速度。

可以将 Docker 的默认镜像源换成国内的镜像源。国内镜像源通常响应速度更快,更加稳定,详情如下。


三、实战经验

1、Docker 镜像源修改

对于使用 systemd 的系统(Ubuntu 16.04+Debian 8+CentOS 7), 在配置文文件:/etc/docker/daemon.json 中加入:

{"registry-mirrors": ["https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn","https://hub-mirror.c.163.com","https://mirror.baidubce.com"]
}或{"registry-mirrors": ["https://docker.m.daocloud.io","https://dockerhub.timeweb.cloud","https://huecker.io"]
}

查询个人的阿里云的镜像加速地址,可参考:

如何将Docker镜像源更改为阿里云的镜像加速地址_docker换阿里镜像-CSDN博客

接着重新启动 dockerd:

加载配置: systemctl daemon-reload
重启 docker: systemctl restart docker

参考:Docker Hub - USTC Mirror Help 


2、Docker 目录修改

Docker 默认的安装目录为:/var/lib/docker,这里面会存放很多很多镜像,所以我们在安装的时候需要考虑这个目录的空间,有三种解决方案:

  1. /var/lib/docker 挂载到一个大的磁盘,这种一般我们能控制挂载目录,像腾讯云这种云厂商在安装 K8s 的节点的时候提供了挂载选项,可以直接挂载这个目录过去。
  2. 安装之前挂载一个大的磁盘,然后创建一个软链接到/var/lib/docker,这样就自动安装到我们空间比较大的磁盘了。
  3. 安装了 docker,然后发现忘了配置这个目录,我们需要修改 docker 的配置文件。

配置文件信息 /etc/docker/daemon.json:

 

修改前:

修改后:


四、GUI 版本安装(Windows 11)

1、安装依赖

(1)确定开启虚拟化

重启电脑,完成系统设置:


A. 安装 WSL2
  • 以管理员权限运行 PowerShell
  • 查看版本,如果不是 2 需要更新到 2
wsl --status
  • PowerShell 运行命令更新 wsl 到最新版本
wsl --update
  • 设置 wsl 默认版本
wsl --set-default-version 2

B. 通过微软应用商店安装 Ubuntu 18.04.5

  • 启动安装好的 Ubunt18.04,如图表示启动成功


2、安装 docker

  • 点击链接下载:https://desktop.docker.com/win/stable/Docker%20Desktop%20Installer.exe

  • 下载好之后双击 Docker Desktop Installer.exe 开始安装。
  • 点击 Docker Desktop 桌面快捷方式运行 Dokcer。

  • 确认 Docker 安装成功,PowerShell 中输入 docker version 命令确认 Client Server 是否启动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3280310.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

spring源码 循环依赖

spring框架两大核心:IOC和AOP IOC(Inverse of Control)控制反转 将对象的创建权交给 Spring 容器去创建,利用了工厂模式将对象交给容器管理,只需要在spring配置文件中配置相应的bean,以及设置相关的属性,让spring容器…

华为机试HJ76尼科彻斯定理

华为机试HJ76尼科彻斯定理 题目: 想法: 从题目可以找到规律,输出的第一个奇数为 ( 当前输入数值 − 1 ) 当前输入数值 1 (当前输入数值-1)当前输入数值1 (当前输入数值−1)当前输入数值1,输出是连续的输入数值个数个奇数&#…

具身智能又进一步!卡内基梅隆Meta苏黎世联邦实现虚拟人超灵活抓取

论文链接:https://arxiv.org/pdf/2407.11385 github链接:https://www.zhengyiluo.com/Omnigrasp-Site/ 亮点直击 本文设计了一种灵巧且通用的人形机器人运动表示,这显著提高了样本效率,并使得通过简单而有效的状态和奖励设计来学习…

51单片机嵌入式开发:22、STC89C52R控制 实现单总线温度传感器DS18b20的温度读取

STC89C52R控制 实现单总线温度传感器DS18b20的温度读取 1 概述1.1 介绍1.2 特点1.3 应用领域 2 DS18B20原理详解2.1 内部机理2.2 读写时序2.3 DS18B20操作代码程序 3 演示4 总结 配套演示例程 1 概述 DS18B20是一款数字温度传感器,由Maxim Integrated(美…

【linux】【操作系统】head.s 源码阅读

head.s是Intel x86架构下的汇编语言代码,用于设置操作系统的内存管理和中断处理。主要完成以下内容: 设置数据段、代码段、附加段和全局段寄存器为0x10。设置堆栈指针为_stack_start。设置中断描述符表(IDT)和全局描述符表&#…

负载均衡、软件平滑升级

安装nginx 1.26.1 平滑升级、负载均衡 安装依赖 gcc gcc-c pcre-devel openssl-devel 七层负载均衡配置: [rootf ~]# vim /usr/local/nginx/conf/nginx.conf 43 location / {44 # root html;45 # index index.html index…

airtest的demo实现多设备并行

airtest的demo实现多设备并行 它实现是的获取adb连接上的所有设备,然后在每一台设备上跑给定的测试用例,跑完之后生成单机的测试报告,最后再汇总这些单机测试报告的结果,形成汇总(聚合)报告: 同…

html+css 实现4角移动悬停按钮

前言:哈喽,大家好,今天给大家分享htmlcss 绚丽效果!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 文…

基于funasr+pyaudio实现电脑本地麦克风实时语音识别项目语音转文本python实现

【框架地址】 https://github.com/modelscope/FunASR 【简单介绍】 FunASR是一个功能全面的语音识别工具包,支持多种预训练模型的推理和微调,提供高精度和高效能的语音识别服务。结合PyAudio库,可以实现电脑本地麦克风实时语音识别项目。 …

ZeST:Zero-shot material transfer from a single image

1.Introduction 编辑图像中的物体材料。本文中,给定一个物体的单一图像和另一个材料示例图像,目标是直接在2D中将材料外观从示例转移到目标物体。1.材料迁移的明确方法需要理解示例和输入图像中的许多物体级属性,例如几何形状和光照。随后,将材料信息从这些属性中分离出来,…

最后一个单词的长度-string

58. 最后一个单词的长度 - 力扣(LeetCode) class Solution { public:int lengthOfLastWord(string s) {int right s.size()-1;while(s[right] ){right--;}int cnt 0;while(right > 0 && s[right] ! ){right--;cnt;}return cnt;} }; 注意…

银河麒麟V10使用虚拟系统管理器KVM创建虚拟机

国产操作系统银河麒麟V10系统,创建,安装国产银河麒麟V10系统 内置virt-manager 虚拟系统管理器,不用安装VMware就能创建虚拟机。 virt-manager是一个图形化工具,用于在KVM上创建和管理虚拟机。按照以下步骤创建虚拟机&#xff1…

《汇编语言 基于x86处理器》- 读书笔记 - 第3章-汇编语言基础 - 3.9 复习题和练习

《汇编语言 基于x86处理器》- 读书笔记 - 第3章-汇编语言基础 - 复习题和练习 3.9.1 简答题1. 举例说明三种不同的指令助记符。2. 什么是调用规范?如何在汇编语言声明中使用它?3. 如何在程序中为堆栈预留空间?4. 说明为什么术语 *汇编器语言* 不太正确。5. 说明大端序和小端…

汽车电控诊断DTC故障码

上回说的即使一张表了解的常用的诊断服务也有26个之多。但其实和诊断管理最密切相关的,还是车辆故障码相关的服务,也叫DTC(Diagnostic Trouble Code)。车辆发生故障时,故障会分类和编码被控制器存储下来,被…

应急靶场(11):【玄机】日志分析-apache日志分析

题目 提交当天访问次数最多的IP,即黑客IP黑客使用的浏览器指纹是什么,提交指纹的md5查看index.php页面被访问的次数,提交次数查看黑客IP访问了多少次,提交次数查看2023年8月03日8时这一个小时内有多少IP访问,提交次数 …

【区块链+绿色低碳】基于区块链的双碳能源纳管平台 | FISCO BCOS应用案例

在双碳战略的指导下,南京区块链产业应用协会牵头研发的双碳能源纳管平台,依托区块链、人工智能、云计算、 物联网、大数据、工业互联网与边缘计算等技术,对绿电追溯、需求侧响应、能源微网、源网荷储、隔墙用电、 碳排放权认证、额度计量、预…

自动化测试框架:DrissionPage

一、工具概述 DrissionPage 是一个基于 python 的网页自动化工具。它既能控制浏览器,也能收发数据包,还能把两者合而为一。可兼顾浏览器自动化的便利性和 requests 的高效率。它功能强大,内置无数人性化设计和便捷功能。它的语法简洁而优雅&a…

nginx出现Refused to apply inline style because it violates

Content Security Policy的错误。根据错误提示,nginx拒绝应用内联样式,因为它违反了内容安全策略(Content Security Policy)。内容安全策略是一种浏览器机制,用于防止潜在的安全漏洞,通过限制从外部来源加载…

资金管理平台 -SAP创建凭证测试程序及增强!

文章目录 主要程序创建程序程序 代码解析变量定义抬头和项目初始值表头赋值调用BAPI其他的子例程 增强部分LFACIF5D程序FI_DOCUMENT_CHECK完整程序 BADI增强 主要程序 创建程序 程序 &---------------------------------------------------------------------* *& Re…

【多线程】补充内容 {线程池;线程安全的单例模式;STL容器、智能指针的线程安全;其他常见的各种锁:自旋锁、读写锁}

一、线程池 1.1 概念 线程池一种线程使用模式: 线程过多会带来调度开销,进而影响缓存局部性和整体性能。 而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务:(线程池的优点) 这避免了在处…