Create a single node Kubernetes cluster on Mac
本文描述了如何使用docker desktop创建一个kubernetes单机开发测试环境。分如下几个步骤。
下载docker
官网下载最新版本docker desktop,并安装。
修改镜像加速地址
建议使用阿里镜像仓库,使用自己的账号登录和查看。
settings - docker engine 修改配置
{
"debug": true,
"experimental": false,
"registry-mirrors": [
"https://xxx.mirror.aliyuncs.com"
]
}
下载k8s相关服务的镜像
执行如下shell,根据自己需要修改版本号。
#!/bin/bash
set -e
KUBE_VERSION=v1.15.5
KUBE_DASHBOARD_VERSION=v1.10.1
KUBE_PAUSE_VERSION=3.1
ETCD_VERSION=3.3.10
COREDNS_VERSION=1.3.1
GCR_URL=k8s.gcr.io
ALIYUN_URL=registry.cn-hangzhou.aliyuncs.com/google_containers
# get images
images=(kube-proxy:${KUBE_VERSION}
kube-scheduler:${KUBE_VERSION}
kube-controller-manager:${KUBE_VERSION}
kube-apiserver:${KUBE_VERSION}
pause:${KUBE_PAUSE_VERSION}
etcd:${ETCD_VERSION}
coredns:${COREDNS_VERSION}
kubernetes-dashboard-amd64:${KUBE_DASHBOARD_VERSION})
for imageName in ${images[@]} ; do
docker pull $ALIYUN_URL/$imageName
docker tag $ALIYUN_URL/$imageName $GCR_URL/$imageName
docker rmi $ALIYUN_URL/$imageName
done
开启k8s
在docker desktop - kubernetes - enable kubernetes。
启动docker和k8s。
开启k8s dashboard
运行命令:kubectl proxy
访问:http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/replicationcontroller?namespace=default
输入如下令牌登录即可。
生成令牌:
TOKEN=$(kubectl -n kube-system describe secret default| awk '$1=="token:"{print $2}')
kubectl config set-credentials docker-desktop --token="${TOKEN}"
echo $TOKEN