ubuntu server 22.04安装 minikube

本文详细描述了如何在Vmware虚拟机中安装Ubuntu22.04Server,更新系统,安装Docker,卸载旧版,添加国内镜像源,以及配置Minikube,包括安装kubectl和启用MiniKubeDashboard。
摘要由CSDN通过智能技术生成

环境准备

Vmware 虚拟机中安装 Ubuntu 22.04 server,完成系统的基本配置。

安装 MiniKube

安装脚本借鉴于:https://blog.csdn.net/LeoForBest/article/details/126524892,在此基础上做了修改。

#!/usr/bin/bash
# ~~~~~~~~~
# Ubuntu 22.04 Minikube install
# Update Author: yuluo
# Usage: bash install.sh (不要sudo,使用普通用户)

echo "正在准备环境..."
sudo apt-get update -y
sudo apt-get install ca-certificates curl gnupg lsb-release apt-transport-https -y

function install_docker() {
    echo "正在卸载旧版本docker..."
    sudo apt-get remove docker docker-engine docker.io containerd runc -y
    echo "正在添加docker gpg..."
    sudo mkdir -p /etc/apt/keyrings
    if [ -f "/etc/apt/keyrings/docker.gpg" ]; then
        sudo rm /etc/apt/keyrings/docker.gpg
    fi

    sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    sudo chmod a+r /etc/apt/keyrings/docker.gpg
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list >/dev/null
    echo "正在安装docker..."
    sudo apt-get update
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
    echo "正在添加当前用户${USER}到docker组..."
    sudo usermod -aG docker "$USER"
    echo "正在设置docker registry国内镜像..."
    if [ -f "/etc/docker/daemon.json" ]; then
        sudo mv /etc/docker/daemon.json{,.bak}
    fi
    cat <<EOF | sudo tee /etc/docker/daemon.json >/dev/null
{
 "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn", "https://registry.docker-cn.com"]
}
EOF
    # 将 docker.sock 文件所有者修改为当前用户,确保 minikube 启动成功
    sudo chown $USER /var/run/docker.sock

    sudo systemctl restart docker.service
    echo "Docker安装完成."
}

function install_kubectl() {
	
    echo "正在下载安装 kubectl"
    # 和 minukube 同理
    # sudo curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl 
    sudo chmod +x ./kubectl
    sudo mv ./kubectl /usr/local/bin/
    echo "kubectl 安装完成..."
}

install_kubectl

function install_minikube() {
    echo "正在下载安装minikube-linux-amd64..."
    # 提前下在 minikube 到当前路径下,因为网络原因下载太慢,因此注释此步骤
    # sudo curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
    sudo install minikube-linux-amd64 /usr/local/bin/minikube
    echo "正在启动minikube..."
    # minikube 清除了所有内容,谨慎使用
    # minikube delete
    # --kubernetes-version=v1.23.8 https://github.com/kubernetes/minikube/issues/14477
    
    minikube start --kubernetes-version=v1.23.8 --image-mirror-country='cn' --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers'

    minikube status
    
    echo "minikube 启动成功,安装minikube完毕..."
}

install_docker

# echo "正在安装virtualbox..."

# 这里在物理linux机器上运行时使用,如果已经在 vm 虚拟机上,裸机运行即可
# sudo apt install virtualbox virtualbox-ext-pack -y

install_minikube

echo -e "\n\n"

cat <<EOF
**************************************
            docker version
**************************************
EOF

sudo docker version

cat <<EOF
*******************************************
   设置 minikube kubectl 别名为 kubectl
*******************************************
EOF

# 可选
echo 'alias kubectl="minikube kubectl --"' >> ~/.profile
source ~/.profile

cat <<EOF
**************************************
       kubectl -- get po -A
**************************************
EOF

kubectl get pods -A

echo -e "\n 为 root 用户添加 kubectl 的执行权限,原因如下:因为 minikube 在普通用户下启动,root 用户下无 minikube 应用。所以使用时会 8080 refused"

sudo mkdir -p /root/.kube
sudo cp $HOME/.kube/config /root/.kube
sudo su

echo -e "\n 更多信息可参考: https://minikube.sigs.k8s.io/docs/start/"

安装最终效果如下:

yuluo@yuluo-ubuntu:~/minikube$ kubectl get pod -A
NAMESPACE     NAME                               READY   STATUS    RESTARTS        AGE
kube-system   coredns-5d78c9869d-s4hrm           1/1     Running   0               2m57s
kube-system   etcd-minikube                      1/1     Running   0               3m10s
kube-system   kube-apiserver-minikube            1/1     Running   0               3m10s
kube-system   kube-controller-manager-minikube   1/1     Running   0               3m10s
kube-system   kube-proxy-sbpzx                   1/1     Running   0               2m57s
kube-system   kube-scheduler-minikube            1/1     Running   0               3m10s
kube-system   storage-provisioner                1/1     Running   1 (2m36s ago)   3m9s
yuluo@yuluo-ubuntu:~/minikube$ 

部署 MiniKube Dashboard

  1. minikube dashboard
  2. kubectl get pods -A | grep dashboard
  3. 配置远程访问
    kubectl proxy --address='0.0.0.0' --disable-filter=true
    
  4. 浏览器访问:
       http://ip:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值