当前位置: 首页 > 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…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战&#xff1a;腾讯云IM群组成员管理&#xff08;增删改查&#xff09; 一、前言 在社交类App开发中&#xff0c;群组成员管理是核心功能之一。本文将基于UniApp框架&#xff0c;结合腾讯云IM SDK&#xff0c;详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

postgresql|数据库|只读用户的创建和删除(备忘)

CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习

禁止商业或二改转载&#xff0c;仅供自学使用&#xff0c;侵权必究&#xff0c;如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成&#xff0c;用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机&#xff1a; ​onCreate()​​ ​调用时机​&#xff1a;Activity 首次创建时调用。​…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...

JavaScript 数据类型详解

JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型&#xff08;Primitive&#xff09; 和 对象类型&#xff08;Object&#xff09; 两大类&#xff0c;共 8 种&#xff08;ES11&#xff09;&#xff1a; 一、原始类型&#xff08;7种&#xff09; 1. undefined 定…...

学习 Hooks【Plan - June - Week 2】

一、React API React 提供了丰富的核心 API&#xff0c;用于创建组件、管理状态、处理副作用、优化性能等。本文档总结 React 常用的 API 方法和组件。 1. React 核心 API React.createElement(type, props, …children) 用于创建 React 元素&#xff0c;JSX 会被编译成该函数…...