适用环境:阿里云 ECS(CentOS / Alibaba Cloud Linux 3),最低配置 2 核 CPU,4 GB 内存(实际 3.5GB 也可勉强运行)。
核心痛点:国内访问 gcr.io 极慢或超时,需手动拉取阿里云镜像并打标签。

学完容器化就要学k8s了,所以下载个练手

1️⃣ 创建普通用户并加入 Docker 组(避免 root 运行)

bash

# 创建用户(例如 k8suser)
useradd -m -s /bin/bash k8suser
passwd k8suser

# 将用户加入 docker 组(需先安装 Docker)
usermod -aG docker k8suser

# 切换到普通用户
su - k8suser

2️⃣ 安装 Docker、Minikube、kubectl

bash

# 安装 Docker(若已安装可跳过)
curl -fsSL https://get.docker.com | bash -s docker
sudo systemctl enable --now docker

# 下载 Minikube
curl -LO https://github.com/kubernetes/minikube/releases/latest/download/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube

# 下载 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

3️⃣ 配置 Docker 镜像加速(加速拉取基础镜像)

阿里云每个账号都有免费镜像加速地址,登录容器镜像服务控制台获取。

bash

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

4️⃣ 手动拉取 Minikube 基础镜像(避开 gcr.io 墙)

bash

# 从阿里云仓库拉取 kicbase
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.50

# 打上 minikube 期望的标签
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kicbase:v0.0.50 gcr.io/k8s-minikube/kicbase:v0.0.50

5️⃣ 启动 Minikube 集群(指定资源)

注意:–cpus 不能小于 2,–memory 建议 1900MB 以上,内存紧张时可用 1800MB。

bash

minikube start --driver=docker --cpus=2 --memory=1800mb

成功标志
最后一行输出 Done! kubectl is now configured to use "minikube" cluster …

6️⃣ 验证集群状态

bash

kubectl get nodes        # 应显示 Ready
kubectl get pods -A      # 所有系统 Pod 均为 Running

7️⃣ (可选)部署一个 Nginx 测试

bash

kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort
kubectl get svc          # 查看 NodePort 端口

常见错误及解决方法

错误现象原因解决方案
Requested cpu count 1 is less than the minimum allowed of 2CPU 核心数不足改为 --cpus=2
Requested memory allocation (1800MB) is less than the recommended minimum 1900MB内存略低可忽略警告,或增加内存
Unable to find image 'gcr.io/k8s-minikube/kicbase...'镜像拉取超时执行“步骤4”手动拉取并打标签
The requested memory allocation does not leave room for system overhead系统总内存不足降低 --memory 至 1500MB,或创建 swap

更多推荐