学习环境安装minikube

以前刚学k8s时,薅了羊毛搞了3台服务器搭集群玩。以前没用过minikube,于是用家里老古董台式机弄个虚拟机,搞个minikube来玩玩。

安装环境

官方安装教程 https://minikube.sigs.k8s.io/docs/start/?arch=%2Flinux%2Fx86-64%2Fstable%2Frpm+package

官方文档上,安装minikube,服务器需要满足以下条件

直接搞个虚拟机
在这里插入图片描述

版本是 Ubuntu 24.04.1 LTS (GNU/Linux 6.8.0-45-generic x86_64)

安装docker

docker官方安装文档地址
https://docs.docker.com/engine/install/ubuntu/

添加apt仓库, ctrl + v即可

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

安装最新版本的docker

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

修改docker仓库源,跟着文档走,复制代码运行即可
在这里插入图片描述

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker

安装minikube

下载安装包

一开始用的rpm的方式安装,结果提示缺依赖,后面改成二进制安装包的方式安装,
执行安装命令


# 下载安装包
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

# 安装
sudo install minikube-linux-amd64 /usr/local/bin/minikube

安装

启动minikube

minikube start

然后会提示

Unable to pick a default driver. Here is what was considered, in preference order:                                                                                            
    ▪ docker: Not healthy: "docker version --format {{.Server.Os}}-{{.Server.Version}}:{{.Server.Platform.Name}}" exit status 1: permission denied while trying to connect to the 

Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.47/version": dial unix /var/run/docker.sock: connect: permission denied            

    ▪ docker: Suggestion: Add your user to the 'docker' group: 'sudo usermod -aG docker $USER && newgrp docker'

按照提示说的,将当前用户加入到docker用户组中

sudo usermod -aG docker $USER && newgrp docker
解决kicbase镜像下载不了问题

然后再次执行minikube start然后就会去下载镜像文件,但是下载不了,会提示下面之类的问题

Unable to find image 'gcr.io/k8s-minikube/kicbase:v0.0.45

试了不少方法,都不好使,最后受不了只能用下面的方法去拉镜像了,用了都说好,妈妈再也不担心我拉不到镜像了
https://github.com/togettoyou/hub-mirror

提交issue,等几分钟后,就复制回复中命令执行即可。
在这里插入图片描述

安装成功

再次回到命令行执行minikube start命令,你就会看到能继续跑下去了,由于之前尝试用代理去下载,所以我这多了一些network option
在这里插入图片描述

启动成功后会提示,没有kubectl,所以还要执行下面的命令去下载

minikube kubectl -- get pods -A

为了方便使用kubectl 还需要将下面的命令加入到~/.bashrc中

alias kubectl="minikube kubectl --"

然后检查下minikube的状态

kubectl get po -A

在这里插入图片描述

部署应用

kubectl create deployment hello-minikube --image=kicbase/echo-server:1.0

然后kubectl get po -A会看到启动不了,原因是镜像拉不下来,
在这里插入图片描述

在这里插入图片描述

老规矩继续走github action的方式把镜像搞下来后,还要使用以下命令将镜像push到minikube中,因为minikube中的docker命令是独立于宿主机中的docker的,也就是用不了宿主机的镜像。

minikube cache add kicbase/echo-server:1.0

命令执行成功后,新打开一个命令行,用以下命令检查

# 这只环境变量,后续所有docker命令都是操作minikube内的docker
eval $(minikube docker-env)

# 查看
docker images

在这里插入图片描述

可以看到镜像已经存在了。等了一会后,重新查看pod状态

在这里插入图片描述

会看到容器已经起来了。然后通过下面的命令将虚拟机的7080端口映射到minikube集群中的service/hello-minikube的8080端口

kubectl port-forward --address 0.0.0.0 service/hello-minikube 7080:8080

然后在浏览器访问地址就可以看到已经成功访问到刚刚起的web了
在这里插入图片描述

总结

起个环境,确实挺方便的,随手start和delete就完事了。给的2c4g偶尔有点小卡,刚装好还没怎么用,不知道还有啥毛病,总的来说一点点弄,慢慢来吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值