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

轻量级 K8S 环境 安装minikube

文章目录

  • 操作系统
  • Docker
  • Docker CE 镜像源站
    • 使用官方安装脚本自动安装 (仅适用于公网环境)
    • 安装校验
    • Docker代理
    • docker permission denied while trying to connect to the Docker daemon socket
  • minikube
  • kubectl工具
  • minikube dashboard
  • minikube 基本命令
    • 参考资料

操作系统

本文采用Debian 12系统(win10+vmware Debian 12虚拟机)

Docker

参考文档docker-ce

Docker CE 镜像源站

使用官方安装脚本自动安装 (仅适用于公网环境)

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyundocker version

安装校验

root@xxx:$ docker version
Client:Version:      17.03.0-ceAPI version:  1.26Go version:   go1.7.5Git commit:   3a232c8Built:        Tue Feb 28 07:52:04 2017OS/Arch:      linux/amd64Server:Version:      17.03.0-ceAPI version:  1.26 (minimum version 1.12)Go version:   go1.7.5Git commit:   3a232c8Built:        Tue Feb 28 07:52:04 2017OS/Arch:      linux/amd64Experimental: false

Docker代理

touch /etc/docker/daemon.json
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://bjtzu1jb.mirror.aliyuncs.com","http://f1361db2.m.daocloud.io","https://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn","https://reg-mirror.qiniu.com","https://dockerhub.azk8s.cn","https://registry.docker-cn.com"]
}
EOF# 重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker

docker permission denied while trying to connect to the Docker daemon socket

将用户添加到 Docker 组: 若要允许用户在不使用 sudo 的情况下运行 Docker 命令,可以将用户添加到 docker 组。首先检查 docker 组是否存在:

grep docker /etc/group 

如果组存在,将用户添加到该组:

sudo usermod -aG docker $USER 

添加用户到 docker 组后,可能需要注销并重新登录以使更改生效。

重启 Docker 服务: 如果问题仍然存在,尝试重启 Docker 服务:

sudo service docker restart 

sudo systemctl restart docker 

尝试上述步骤后,你应该能够在不遇到 “permission denied” 错误的情况下运行 Docker 命令。
请记住,如果将用户添加到 docker 组,可能需要注销并重新登录以使组更改生效。

minikube

minikube 是一个工具, 能让你在本地运行 Kubernetes。

minikube 在你的个人计算机(包括 Windows、macOS 和 Linux PC)上运行一个一体化(all-in-one) 或多节点的本地 Kubernetes 集群,以便你来尝试 Kubernetes 或者开展每天的开发工作。

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
sudo dpkg -i minikube_latest_amd64.deb

启动的选项有很多,如果可以直接minikube start就直接启动就行,无须添加过多选项。

minikube start
# 将用户添加到 Docker 组,就不需要force选项
minikube start  --force --driver=docker
# 将用户添加到 Docker 组,就不需要force选项
minikube start --force  --driver=docker --image-mirror-country=CN# 启动命令
minikube start --kubernetes-version='1.28'  --registry-mirror=https://docker.mirrors.ustc.edu.cn --image-mirror-country='cn'

minikube停止、删除、查看pod信息

# 停止
minikube stop
# 删除
minikube delete# 查看pod信息
minikube kubectl -- get pods -A

kubectl工具

Kubernetes 命令行工具 kubectl, 让你可以对 Kubernetes 集群运行命令。 你可以使用 kubectl 来部署应用、监测和管理集群资源以及查看日志。

安装kubectl

# 下载curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

在这里插入图片描述

# 安装
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
# 查看pod
kubectl get pod -o wide -n kube-system

minikube dashboard

minikube dashboard返回的url http://127.0.0.1:42005/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ 为访问地址,但此地址只是容器代理出来的地址,只能本机内网访问,要想在外网访问 dashboard 的UI 界面,需要使用kubectl做一层代理。kubectl proxy --port=端口号(一个没有被占用的就可以) --address='机器内网地址' --accept-hosts='^.*' &以上命令昨晚代理后,访问 http://机器公网IP:上面配置的端口号/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ 就可以访问到dashboard 的UI 界面

启动代理,在win10浏览器可以访问

kubectl proxy --port=8083 --address='0.0.0.0' --accept-hosts='^.*' &

云服务器外部访问要添加访问规则
路径为,云服务器——网络与安全——安全组——访问规则

minikube 基本命令

查看docker信息需要登录到 minikube 环境查看。

minikube 提供并管理针对开发工作流程优化的本地 Kubernetes 集群。基本命令:start            启动本地 Kubernetes 集群status           获取本地 Kubernetes 集群状态stop             停止正在运行的本地 Kubernetes 集群delete           删除本地的 Kubernetes 集群dashboard        访问在 minikube 集群中运行的 kubernetes dashboardpause            暂停 Kubernetesunpause          恢复 Kubernetes镜像命令docker-env       提供将终端的 docker-cli 指向 minikube 内部 Docker Engine 的说明。(用于直接在 minikube 内构建 docker 镜像)podman-env       配置环境以使用 minikube's Podman servicecache            管理 images 缓存image            管理 images配置和管理命令:addons           启用或禁用 minikube 插件config           修改持久配置值profile          获取或列出当前配置文件(集群)update-context   IP或端口更改的情况下更新 kubeconfig 配置文件网络和连接命令:service          返回用于连接到 service 的 URLtunnel           连接到 LoadBalancer 服务高级命令:mount            将指定的目录挂载到 minikubessh              登录到 minikube 环境(用于调试)kubectl          运行与集群版本匹配的 kubectl 二进制文件node             添加,删除或者列出其他的节点cp               将指定的文件复制到 minikube故障排除命令ssh-key          检索指定节点的 ssh 密钥路径ssh-host         检索指定节点的 ssh 主机密钥ip               检索指定节点的IP地址logs             返回用于调试本地 Kubernetes 集群的日志update-check     打印当前版本和最新版本version          打印 minikube 版本options          显示全局命令行选项列表 (应用于所有命令)。Other Commands:completion       生成命令补全的 shell 脚本license          将依赖项的 licenses 输出到一个目录

参考资料

Minikube start中文
minikube start
阿里云CentOS 7 安装部署 minikube且外网能访问dashboard
错误docker permission denied while trying to connect to the Docker daemon socket
minikube start 可选项

相关文章:

轻量级 K8S 环境 安装minikube

文章目录 操作系统DockerDocker CE 镜像源站使用官方安装脚本自动安装 &#xff08;仅适用于公网环境&#xff09;安装校验Docker代理docker permission denied while trying to connect to the Docker daemon socket minikubekubectl工具minikube dashboardminikube 基本命令参…...

市场巨变,移动开发行业即将迎来“第二春”?

随着鸿蒙生态的不断壮大&#xff0c;越来越多的企业开始加入其中&#xff0c;对鸿蒙OS开发工程师的需求也越来越迫切。 年初时还只有200个APP宣布加入鸿蒙生态&#xff0c;而最近华为也已经官宣&#xff0c;已经有4000多个应用加入鸿蒙&#xff0c;短短三个月就增加了20倍。 …...

DependencyCheck工具使用

1、工具下载地址 Releases jeremylong/DependencyCheck GitHub 2、工具使用 ./dependency-check.sh --disableRetireJS --disableNodeJS --project test -s /test/ -o /home/clog/test/report10 --noupdate...

oracle翻页查询的小坑记录

oracle的查询&#xff0c;因为能获取到查询结果的rownum&#xff0c;就想着直接在查询条件后面做翻页&#xff0c;而且首页确实是正常查询到了。后面才发现翻页是空的。。。 这是因为rownum排序是在查询结果才分配的。所以应该把查询结果作为子查询&#xff0c;在外查询应用排序…...

学习笔记——动态路由协议——OSPF(OSPF基本术语)

OSPF基本术语 1、链路状态(LS)与链路状态通告(LSA) 链路(LINK)&#xff1a;路由器上的一个接口。 状态(State)&#xff1a;描述接口以及其与邻居路由器之间的关系。 (1)链路状态(LS) OSPF是一种链路状态协议&#xff0c;所谓的链路状态&#xff0c;其实就是路由器的接口状态…...

子集和问题(回溯法)

目录 ​​​​ 前言 一、算法思路 二、分析过程 三、代码实现 伪代码&#xff1a; C&#xff1a; 总结 前言 【问题描述】考虑定义如下的PARTITION问题中的一个变型。给定一个n个整数的集合X{x1,x2,…,xn}和整数y&#xff0c;找出和等于y的X的子集Y。 一、算法思路 基本思想&am…...

【NumPy】全面解析arange函数:高效创建数值范围数组

&#x1f9d1; 博主简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…...

[ C++ ] 深入理解模板( 初 阶 )

函数模板 函数模板格式 template <typename T1, typename T2,......,typename Tn> 返回值类型 函数名(参数列表){} 注意&#xff1a; typename是用来定义模板参数关键字&#xff0c;也可以使用class(切记&#xff1a;不能使用struct代替class) 函数模板的实例化 模板参数…...

UI自动化测试最佳设计模式POM

当使用Selenium进行UI自动化测试时&#xff0c;Page Object Model&#xff08;POM&#xff09;是一种最佳实践的设计模式。POM的核心思想是通过将页面封装成对象&#xff0c;使得测试代码更加清晰、可维护和可重用。 POM的主要组成部分包括页面对象类、元素定位方式和操作方法…...

朋友圈定时发送设置

人日常中不可缺少的一件事&#xff0c;同时也是企业用来触达客户的重要渠道&#xff0c;下面一起来了解下微信朋友圈怎么定时发送呢&#xff1f;...

Spark SQL 中DataFrame DSL的使用

在上一篇文章中已经大致说明了DataFrame APi,下面我们具体介绍DataFrame DSL的使用。DataFrame DSL是一种命令式编写Spark SQL的方式&#xff0c;使用的是一种类sql的风格语法。 文章链接&#xff1a; 一、单词统计案例引入 import org.apache.spark.sql.{DataFrame, SaveMod…...

qt 布局学习笔记

目录 qt下载地址&#xff1a; widget 宽高 管理信息列表源码 c版&#xff1a; pro文件&#xff1a; qt 设置水平布局&#xff0c;里面有两个按钮&#xff0c;每个按钮就变的很宽&#xff0c;怎么设置按钮的精确位置 设置固定大小&#xff1a; 使用弹性空间&#xff08;…...

设计模式复习

一、模式所采用的关系&#xff08;e.g.继承…&#xff09; UML图例 二、各模式的特点、优缺点 1.创建型&#xff08;5种创建型口诀: 抽象工厂 按照 工厂方法&#xff0c;建造 单例 原型&#xff09; 将对象的使用和创建分离&#xff0c;使用对象时无需知道对象的创建细节&a…...

前后端开发入门全攻略:零基础学起

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、前后端开发概览 二、后端开发基础&#xff1a;Flask框架入门 代码案例&#xff1a;Hel…...

Android Studio无法改变Button背景颜色解决办法

大家好&#xff0c;我是咕噜铁蛋&#xff01;今天我来和大家探讨一个在Android开发中常见但可能让初学者感到困惑的问题——如何在Android Studio中改变Button的背景颜色。这个问题看似简单&#xff0c;但实际操作中可能会遇到一些意想不到的挑战。接下来&#xff0c;我将从多个…...

元宇宙三维互动展厅让体验者进入一个充满奇幻与创意的数字世界

元宇宙数字产品展厅搭建编辑器凭借强大的三维可视化互动功能&#xff0c;为用户带来前所未有的沉浸式数字展览体验。 在元宇宙数字产品展厅搭建编辑器中&#xff0c;用户可以轻松打造逼真的三维展览环境&#xff0c;通过VR虚拟现实技术&#xff0c;仿佛置身于一个充满奇幻与创意…...

java高级——Collection集合之List探索(包含ArrayList、LinkedList、Vector底层实现及区别,非常详细哦)

java高级——Collection集合之List探索 前情提要文章介绍提前了解的知识点1. 数组2. 单向链表3. 双向链表4. 为什么单向链表使用的较多5. 线程安全和线程不安全的概念 ArrayList介绍1. 继承结构解析1.1 三个标志性接口1.2 AbstractList和AbstractCollection 2. ArrayList底层代…...

JAVA-->方法的使用详解

JAVA–>方法的使用详解 1.方法的概念及使用 1.1 什么是方法 : 方法就是一个代码片段. 类似于 C 语言中的 “函数”。 1.2 方法定义 / 方法定义 修饰符 返回值类型 方法名称([参数类型 形参 ...]){方法体代码;[return 返回值]; }判断是否为闰年 public class Method{ //…...

基于 vLLM 搭建 DeepSeek-V2 Chat 服务

直奔主题。 安装vLLM 官方实现的代码还没有 merge 到 vLLM 主分支&#xff0c;所以直接 git clone DeepSeek 的分支。 git clone https://github.com/zwd003/vllm.git cd vllm pip install -e .源码安装大概耗时 10 分钟。 OpenAI 接口规范启动 官方 Github 放的是单条推理…...

Kafka 安装教程和基本操作

一、简介 Kafka 是最初由 Linkedin 公司开发&#xff0c;是一个分布式、分区的、多副本的、多订阅者&#xff0c;基于 zookeeper 协调的分布式日志系统&#xff08;也可以当做 MQ 系统&#xff09;&#xff0c;常见可以用于 web/nginx 日志、访问日志&#xff0c;消息服务等等…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

idea大量爆红问题解决

问题描述 在学习和工作中&#xff0c;idea是程序员不可缺少的一个工具&#xff0c;但是突然在有些时候就会出现大量爆红的问题&#xff0c;发现无法跳转&#xff0c;无论是关机重启或者是替换root都无法解决 就是如上所展示的问题&#xff0c;但是程序依然可以启动。 问题解决…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式&#xff08;Singleton Pattern&#…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的&#xff0c;可以通过集中管理和高效资源的分配&#xff0c;来支持多个独立的网站同时运行&#xff0c;让每一个网站都可以分配到独立的IP地址&#xff0c;避免出现IP关联的风险&#xff0c;用户还可以通过控制面板进行管理功…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机&#xff0c;点进去 点进去 查看URL&#xff0c;有 ?fileflag.php说明存在文件包含&#xff0c;原理是php://filter 协议 当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执行。 用php://filter加编码&#xff0c;能让PHP把文件内容…...