# MINIKUBE 安装 ## 获取 minikube 进入 https://github.com/kubernetes/minikube/releases/tag/v1.31.2 点击 Assets 点击 minikube-linux-amd64 下载 上传到服务器 ## 安装 ```shell install minikube-linux-amd64 /usr/local/bin/minikube ``` ## 启动 ```shell minikube start \ --image-mirror-country='cn' \ --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers' \ --base-image='registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.40' \ --container-runtime=containerd \ --kubernetes-version=v1.27.4 \ --driver=docker \ --force ``` ## 配置镜像仓库 ```shell # 进入容器 docker exec -it minikube /bin/bash # 修改配置文件 cat > /etc/containerd/certs.d/docker.io/hosts.toml <<-'EOF' server = "https://registry-1.docker.io" [host."https://68k4zzfk.mirror.aliyuncs.com"] capabilities = ["pull","resolve"] EOF # 重启容器 systemctl restart containerd # 退出容器 exit ``` ## 部署 NGINX 集群 创建配置目录 ``` mkdir /usr/local/k8s/ ``` 创建配置文件 ```shell cat > /usr/local/k8s/nginx.yaml <<-'EOF' apiVersion: apps/v1 kind: Deployment metadata: name: nginx spec: selector: matchLabels: app: nginx replicas: 3 template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx ports: - containerPort: 80 EOF ``` 部署 ``` kubectl apply -f /usr/local/k8s/nginx-cluster.yaml ``` ## 配置 KUBECTL ```shell echo 'alias kubectl="minikube kubectl --"' >> /root/.bashrc source /root/.bashrc kubectl version ``` ## 配置 KUBECTL 补全 ```shell apt install bash-completion source /usr/share/bash-completion/bash_completion source <(kubectl completion bash) ``` ## 创建 DASHBOARD 启动 ```shell minikube addons enable metrics-server nohup minikube dashboard > dashboard.log 2>&1 & nohup minikube kubectl -- proxy --address='0.0.0.0' --disable-filter=true > proxy.log 2>&1 & ``` 如果镜像拉不下来 则手动装载镜像 ```shell # 阿里云获取 保存镜像 IMAGE_NAME=metrics-scraper IMAGE_PATH=docker.io/kubernetesui/$IMAGE_NAME TAG=v1.0.8 docker pull $IMAGE_PATH:$TAG docker save $IMAGE_PATH:$TAG -o ${IMAGE_NAME}_$TAG.tar IMAGE_NAME=dashboard IMAGE_PATH=docker.io/kubernetesui/$IMAGE_NAME TAG=v2.7.0 docker pull $IMAGE_PATH:$TAG docker save $IMAGE_PATH:$TAG -o ${IMAGE_NAME}_$TAG.tar IMAGE_NAME=metrics-server IMAGE_PATH=registry.cn-hangzhou.aliyuncs.com/google_containers/$IMAGE_NAME TAG=v0.6.4 docker pull $IMAGE_PATH:$TAG docker save $IMAGE_PATH:$TAG -o ${IMAGE_NAME}_$TAG.tar ``` 上传镜像到本地 ```shell # 宿主机执行 eval $(minikube docker-env) # 导入镜像 IMAGE_NAME=metrics-scraper TAG=v1.0.8 docker load < ${IMAGE_NAME}_$TAG.tar IMAGE_NAME=dashboard TAG=v2.7.0 docker load < ${IMAGE_NAME}_$TAG.tar IMAGE_NAME=metrics-server TAG=v0.6.4 docker load < ${IMAGE_NAME}_$TAG.tar ```