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

K8S学习指南(1)-docker的安装

文章目录

    • 引言
    • 1. Windows 系统中安装 Docker
      • a. 确认系统要求
      • b. 下载 Docker Desktop
      • c. 安装 Docker Desktop
      • d. 配置 Docker Desktop
      • e. 验证安装
    • 2. Ubuntu 系统中安装 Docker
      • a. 更新包列表
      • b. 安装依赖包
      • c. 添加 Docker GPG 密钥
      • d. 添加 Docker APT 仓库
      • e. 安装 Docker
      • f. 添加用户到 docker 组
      • g. 重启系统
      • h. 验证安装
    • 3. CentOS 系统中安装 Docker
      • a. 安装依赖包
      • b. 设置 Docker CE 仓库
      • c. 安装 Docker
      • d. 启动 Docker 服务
      • e. 设置 Docker 为开机启动
      • f. 添加用户到 docker 组
      • g. 验证安装
    • 安装过程中的注意事项
      • a. Hyper-V 启用失败
      • b. Windows 版本不兼容
      • c. 安装期间网络问题
      • d. 安装完成后无法启动 Docker
      • e. 安装过程中占用存储空间
    • 结论

引言

Docker 是一种流行的容器化平台,能够简化应用程序的开发、部署和管理。本文将深入介绍在 Windows、Ubuntu 和 CentOS 系统中安装 Docker 的详细步骤,同时讨论在安装过程中可能遇到的一些注意事项。

1. Windows 系统中安装 Docker

a. 确认系统要求

在安装 Docker 之前,请确保 Windows 符合以下基本要求:

  • Windows 10 专业版或企业版,64 位。
  • 启用虚拟化技术(VT-x)和 Hyper-V。
  • 至少 4 GB 的系统内存。

b. 下载 Docker Desktop

访问 Docker 官方网站(https://www.docker.com/products/docker-desktop)下载 Docker Desktop 的最新版本。

c. 安装 Docker Desktop

运行下载的安装程序,按照提示进行安装。安装期间可能需要系统重启。

d. 配置 Docker Desktop

安装完成后,打开 Docker Desktop。在系统托盘中,你会看到 Docker 图标,表示 Docker 已成功安装并正在运行。

e. 验证安装

打开命令提示符或 PowerShell,运行以下命令验证 Docker 是否正确安装:

docker --version
docker run hello-world

如果一切正常,将显示 Docker 版本信息和一则欢迎消息。

2. Ubuntu 系统中安装 Docker

a. 更新包列表

在 Ubuntu 系统上,首先确保包列表是最新的:

sudo apt update

b. 安装依赖包

安装 Docker 所需的一些基本依赖包:

sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

c. 添加 Docker GPG 密钥

添加 Docker 官方 GPG 密钥,以确保下载的软件包的完整性:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

d. 添加 Docker APT 仓库

添加 Docker APT 仓库到系统源列表:

echo "deb [signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

e. 安装 Docker

安装 Docker Engine:

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

f. 添加用户到 docker 组

将当前用户添加到 docker 用户组,以避免使用 sudo 运行 Docker 命令:

sudo usermod -aG docker $USER

g. 重启系统

使用户组更改生效:

sudo reboot

h. 验证安装

运行以下命令验证 Docker 是否正确安装:

docker --version
docker run hello-world

如果一切正常,将显示 Docker 版本信息和一则欢迎消息。

3. CentOS 系统中安装 Docker

a. 安装依赖包

在 CentOS 系统上,首先安装一些基本依赖包:


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

b. 设置 Docker CE 仓库

配置 Docker CE 仓库:

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

c. 安装 Docker

安装 Docker Engine:

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

d. 启动 Docker 服务

sudo systemctl start docker

e. 设置 Docker 为开机启动

sudo systemctl enable docker

f. 添加用户到 docker 组

将当前用户添加到 docker 用户组:

sudo usermod -aG docker $USER

g. 验证安装

运行以下命令验证 Docker 是否正确安装:

docker --version
docker run hello-world

如果一切正常,将显示 Docker 版本信息和一则欢迎消息。

安装过程中的注意事项

在安装 Docker 过程中,可能会遇到一些常见问题,以下是一些注意事项和解决方法:

a. Hyper-V 启用失败

如果在 Windows 安装 Docker Desktop 时出现 Hyper-V 启用失败的问题,可能是因为系统 BIOS 中未启用虚拟化技术。解决方法是进入系统 BIOS 设置,启用虚拟化技术选项(VT-x)。

b. Windows 版本不兼容

Docker Desktop 对 Windows 10 的版本有要求,确保你的 Windows 10 版本为专业版或企业版,并且更新至最新版本。

c. 安装期间网络问题

在安装期间,Docker 需要从互联网下载一些组件。如果在安装过程中遇到网络问题,可以尝试使用代理或确保系统能够访问互联网。

d. 安装完成后无法启动 Docker

如果安装完成后无法启动 Docker,可以尝试重新安装 Docker Desktop,并确保没有其他虚拟化工具冲突。

e. 安装过程中占用存储空间

Docker 镜像和容器会占用一定的存储空间。在安装 Docker 时,确保系统有足够的可用存储空间。

结论

通过本文,你应该已经了解了在 Windows、Ubuntu 和 CentOS 系统中安装 Docker 的详细步骤以及可能遇到的一些注意事项。安装 Docker 可以为开发者提供一个灵活、轻量级的容器化环境,帮助简化应用程序的开发和部署过程。如果你遇到了问题,可以参考 Docker 官方文档或社区寻求帮助。希望你能顺利地在不同系统中安装和使用 Docker,并享受容器化技术带来的便利。

相关文章:

K8S学习指南(1)-docker的安装

文章目录 引言1. Windows 系统中安装 Dockera. 确认系统要求b. 下载 Docker Desktopc. 安装 Docker Desktopd. 配置 Docker Desktope. 验证安装 2. Ubuntu 系统中安装 Dockera. 更新包列表b. 安装依赖包c. 添加 Docker GPG 密钥d. 添加 Docker APT 仓库e. 安装 Dockerf. 添加用…...

vue3 + mark.js 实现文字标注功能

效果图 安装依赖 npm install mark.js --save-dev npm i nanoid代码块 <template><!-- 文档标注 --><header><el-buttontype"primary":disabled"selectedTextList.length 0 ? true : false"ghostclick"handleAllDelete"…...

运筹优化 | 模拟退火求解旅行商问题 | Python实现

"""模拟退火旅行商""" import random import numpy as np import math import time import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False location np.loadtxt(city_location.t…...

1017 A除以B

本题要求计算 A/B&#xff0c;其中 A 是不超过 1000 位的正整数&#xff0c;B 是 1 位正整数。你需要输出商数 Q 和余数 R&#xff0c;使得 ABQR 成立。 输入格式&#xff1a; 输入在一行中依次给出 A 和 B&#xff0c;中间以 1 空格分隔。 输出格式&#xff1a; 在一行中依…...

SAP UI5 walkthrough step8 Translatable Texts

在这个章节&#xff0c;我们会将一些文本常量独立出一个资源文件 这样的话&#xff0c;可以方便这些文本常量被翻译成任意的语言 这种国际化的操作&#xff0c;我们一般命名为i18n 新建一个文件i18n.properties webapp/i18n/i18n.properties (New) showHelloButtonTextSay …...

RocketMQ-源码架构二

梳理一些比较完整&#xff0c;比较复杂的业务线 消息持久化设计 RocketMQ的持久化文件结构 消息持久化也就是将内存中的消息写入到本地磁盘的过程。而磁盘IO操作通常是一个很耗性能&#xff0c;很慢的操作&#xff0c;所以&#xff0c;对消息持久化机制的设计&#xff0c;是…...

Unity_ET框架项目-斗地主_启动运行流程

unity_ET框架项目-斗地主_启动运行流程 项目源码地址&#xff1a; Viagi/LandlordsCore: ET斗地主Demohttps://github.com/Viagi/LandlordsCore下载项目到本地。 启动运行步骤&#xff1a; 下载目录如下&#xff1a; 1. VS&#xff08;我用是2022版VisualStudio&#xff09…...

自动化测试框架 —— pytest框架入门篇

今天就给大家说一说pytest框架。 今天这篇文章呢&#xff0c;会从以下几个方面来介绍&#xff1a; 01、pytest框架介绍 pytest 是 python 的第三方单元测试框架&#xff0c;比自带 unittest 更简洁和高效&#xff0c;支持非常丰富的插件&#xff0c;同时兼容 unittest 框架。…...

String类详解

String类详解 大家好&#xff0c;我是免费搭建查券返利机器人赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 解密String类&#xff1a;探秘Java中的字符串魔法 在Java的世界里&#xff0c;String类犹如一位魔法…...

Linux高级管理--安装MySQL数据库系统

MySQL服务基础 MySQL.是一个真正的多线程、多用户的SQL数据库服务&#xff0c;凭借其高性能、高可靠和易于使 用的特性&#xff0c;成为服务器领域中最受欢迎的开源数据库系统。在2008年以前&#xff0c;MySOL项目由MySQL AB公司进行开发&#xff0c;发布和支持&#xff0c;之后…...

团建策划信息展示服务预约小程序效果如何

团建是中大型企业商家每年举办的员工活动&#xff0c;其形式多样化、具备全部参与的娱乐性。但在实际策划流程及内容时&#xff0c;部分公司便会难以入手&#xff0c;术业有专攻&#xff0c;这个时候团建策划公司便会发挥效果。 如拓展训练、露营、运动会、体育竞技等往往更具…...

一个Redis实例最多能存放多少keys

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一份大厂面试资料《史上最全大厂面试题》&#xff0c;Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等 …...

K8S(四)—pod详解

目录 pod介绍Pod的概念&#xff1a;Pod的特性&#xff1a;Pod的配置&#xff1a;Pod的控制&#xff1a;示例 YAML 文件&#xff1a; pod启动流程问题 两种方式启动镜像的升级和回滚更新 Deployment&#xff1a;回滚检查 Deployment 历史版本回滚到之前的修订版本缩放 Deploymen…...

shiro Filter加载和执行 源码解析

一、背景 在使用若依框架&#xff08;前后端不分离包含shiro安全框架&#xff09;时&#xff0c;发现作者添加了验证码、登录帐号控制等自定义过滤器&#xff0c;于是对自定的过滤器加载和执行流程产生疑问。下面以验证码过滤器为例&#xff0c;对源码解析。注意类之间的继承关…...

IDEA上传jar包到Maven

mvn install:install-file //固定格式&#xff0c;maven的语法 -Dfilealibaba-sdk-1.0.0.jar //这里填写包的路径&#xff0c;因为我们是在当前目录所以只需要输入包名即可 -DgroupIdcom.qiehua.csdn //这里填写包的groupId&#xff0c;之后作为pom.xml中引用的gr…...

JavaScript——基本语法

1.定义变量&#xff1a; 变量类型 变量名 变量值 var关键字声明变量 es6版本以上 var 可写可不写 <script>// 定义变量&#xff1a;变量类型 变量名 变量值 var关键字声明变量 es6版本以上 var 可写可不写var num 2;</script>2.条件控制 <script>var …...

一款最近很火的开源低代码平台

低代码平台近年来获得大量融资的原因是多方面的。首先&#xff0c;低代码平台代表了软件开发领域的一个重要趋势&#xff0c;即通过简化编程过程来降低技术门槛&#xff0c;使非专业开发者也能构建应用程序。这为那些希望加速数字化转型的企业提供了新的可能性&#xff0c;因此…...

vue之代理配置devServer(vue.config.js)片段

关于vue.config.js的部分配置解析&#xff1a;首先看下面一段配置 devServer: { open: process.platform darwin,//true or false &#xff08;true则启动项目自动打开系统自带浏览器&#xff09; host: 0.0.0.0, // 配置devServer服务监听的地址 比如&#xff1a;想让局域网…...

CTD测试流程

连接 连接17Plus&#xff0c;用usb转232线&#xff0c;db9公针2、3分别接Data I/O的2、3。DB9的5接Data I/O的1。尼龙塞子打开状态。不用闭合。 软件连接 打开SeaTermAF V2&#xff0c;注意打开前先把串口插上&#xff0c;否则软件读不到串口。如果读不到&#xff0c;就在插…...

面试经典150题(15-19)

leetcode 150道题 计划花两个月时候刷完&#xff0c;今天&#xff08;第七天&#xff09;完成了5道(15-19)150&#xff1a; 今天这些都是我之前做过的&#xff0c;还有就是今天的全都是模拟过程。。所以做的还算快。 15&#xff08;13. 罗马数字转整数&#xff09; 题目描述&a…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录&#xff0c;但是由于这个树组件的节点越来越多&#xff0c;导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多&#xff0c;导致的浏览器卡顿&#xff0c;这里很明显就需要用到虚拟列表的技术&…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)

目录 一、&#x1f44b;&#x1f3fb;前言 二、&#x1f608;sinx波动的基本原理 三、&#x1f608;波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、&#x1f30a;波动优化…...

【Go语言基础【12】】指针:声明、取地址、解引用

文章目录 零、概述&#xff1a;指针 vs. 引用&#xff08;类比其他语言&#xff09;一、指针基础概念二、指针声明与初始化三、指针操作符1. &&#xff1a;取地址&#xff08;拿到内存地址&#xff09;2. *&#xff1a;解引用&#xff08;拿到值&#xff09; 四、空指针&am…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路&#xff1a; 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑&#xff1a;async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

Pydantic + Function Calling的结合

1、Pydantic Pydantic 是一个 Python 库&#xff0c;用于数据验证和设置管理&#xff0c;通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发&#xff08;如 FastAPI&#xff09;、配置管理和数据解析&#xff0c;核心功能包括&#xff1a; 数据验证&#xff1a;通过…...