如何启动mac版docker自带的k8s
最近准备好好学习下k8s,为了图方便,直接使用docker集成的k8s,但是网上找了一些教程但都没能一次性成功,只好自己从头跑一遍,顺手写个教程可以方便有类似需求的同学参考。
话不多说,直接上步骤。
1.下载docker
直接去官网下载即可。
由于docker官网需要fq,我使用了阿里云的镜像服务:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
2.启动docker
下载完docker.dmg后点击安装,随后正常打开即可。并在Preference->Daemon中设置阿里云的mirrors,docker自带的mirror需要fq。
3.确认k8s的版本。
打开About Docker DeskTop查看,我的k8s是 v1.10.11。
4.启动k8s
如图,勾选相关选项。这个图是已经启动好了,如果不能启动会一直显示“k8s is starting”。
如果一直显示“k8s is starting....” ,需要确认下k8s依赖是否下载。使用docker images查看。
一般来说,是没法正常启动的。在寻求各路大神之后,找到了一种行之有效的办法。
5.解决方案
更改k8s版本为v1.10.11后生成load_images.sh文件,并执行 ./load_images.sh。
#!/bin/bash set -e
# Check version in https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-init/
# Search "Running kubeadm without an internet connection"
# For running kubeadm without an internet connection you have to pre-pull the required master images for the version of choice:
KUBE_VERSION=v1.10.11
KUBE_DASHBOARD_VERSION=v1.10.1
KUBE_PAUSE_VERSION=3.1
ETCD_VERSION=3.1.12
DNS_VERSION=1.14.8
GCR_URL=k8s.gcr.io
ALIYUN_URL=registry.cn-hangzhou.aliyuncs.com/google_containers images=(kube-proxy-amd64:${KUBE_VERSION}
kube-scheduler-amd64:${KUBE_VERSION}
kube-controller-manager-amd64:${KUBE_VERSION}
kube-apiserver-amd64:${KUBE_VERSION}
pause-amd64:${KUBE_PAUSE_VERSION}
etcd-amd64:${ETCD_VERSION}
k8s-dns-sidecar-amd64:${DNS_VERSION}
k8s-dns-kube-dns-amd64:${DNS_VERSION}
k8s-dns-dnsmasq-nanny-amd64:${DNS_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 docker images
等待下载完毕后,重置k8s。k8s即可正常启动。
6.设置 contexts(非常关键,一定要设置为docker-for-desktop,minikube无法连接)可参考:https://docs.docker.com/docker-for-mac/
$ kubectl config get-contexts
$ kubectl config use-context docker-for-desktop
7.启动 dashboard:
启动dashboard还需要执行
kubectl create -f https://github.com/kubernetes/dashboard/tree/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
部署成功后,我们进行启动 proxy。
kubectl proxy
8.登陆dashboard
这一步需要token:
kubectl -n kube-system describe secret default| awk '$1=="token:"{print $2}'
到此时,k8s已经run起来了。
k8s有点偏运维的方向,但是作为一名站在后端的开发也应该不断学习,后续会持续更新k8s的学习记录。
如何启动mac版docker自带的k8s的更多相关文章
- 在Docker中运行EOS(MAC版)
在Docker中运行EOS(MAC版) 在Docker中也可以简单快速的构建EOS.IO.笔者在Mac平台下参考官方文档躺了一次河.记录如下: 安装依赖 Docker 版本 17.05或者更高 tes ...
- 如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目
如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目 #1:前提准备 1.1 首先请确认你的电脑是windows10专业版或企业版,只有这 ...
- 使用Hexo搭建GitHub博客(2018年Mac版)
关于本文 本文仅记录自己学习搭建Hexo博客之时,搭建过程中掉坑的历程总结,对零基础起步的观众朋友可能缺乏某些基础技术的指导,请优先食用下述两篇优质教程: [2018更新]小白独立搭建博客-Githu ...
- webstorm mac版快捷键
WebStorm快捷键(Mac版) ⌘--Command ⌃ --Control ⌥--alt ⇧--Shift ⇪--Caps Lock fn--功能键就是fn 编辑 Command+alt+T 用 ...
- Mac 下 docker安装
http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...
- Python、PyCharm的安装及使用方法(Mac版)
上周跟朋友喝咖啡时聊起我想学Python,她恰好也有这个打算,顺便推荐了一本书<编程小白的第1本Python入门书>,我推送到Kindle后,随手翻看了下,用语平实,简洁易懂. 之前在R语 ...
- 关于解决Mac使用docker安装SQL server for Linux 中文乱码问题
本人是Mac的追随者,无奈本学期数据库课要求使用Microsoft的SQL server.但是Microsoft并没有发布SQL server for Mac ,笔者使用Google搜索后, 发现可以 ...
- Eclipse怎么样添加智能感知提示功能(含Windows版和Mac版)
近日感兴趣于安卓,开始学习Android开发……第一次使用Eclipse,用久了VS,也习惯了他的智能提示,刚转到Eclipse下实在是不习惯…… 网上有人说按Alt + / 可以实现单词补全功能,实 ...
- mac下docker中安装nodejs
一.首先下载docker并安装 https://download.docker.com/mac/stable/Docker.dmg 然后启动docker, 二.获取node最新镜像 输入来着node版 ...
随机推荐
- JavaScript - 获取当前页面某个节点的个数
document.getElementsByTagName(<tag_name>).length;
- UITextField的内存泄漏问题
背景: 项目中使用了Facebook的FBRetainCycleDetector框架检测内存泄漏问题. 登录VC的view中放置了一个UITextField对象. 产品的要求是当进入登录界面的时候,让 ...
- iOS内存管理的知识梳理
从作用上来说,手机内存小,划分给每个App的内存有限,合理的进行内存管理,有利于提高软件的运行性能和用户体验: 另外,内存管理是一大理论知识块,对这块知识的理解程度也是考核面试者的重要标准. 内存管理 ...
- JAVA基础学习(6)之使用对象
6使用对象 6.1字符类型 6.1.1字符类型 char和int互相转换 //a比A大32 Scanner in=new Scanner(System.in); char c='B'; char c1 ...
- wordpress 代码获得菜单的方法
1.第一种,在function.php中添加这个东东,wp_nav_menu()主要是用这个函数 $menu = 'menu'; $nav_menu = wp_get_nav_menu_object( ...
- bootstrap下拉选择框倒三角所占宽度
<select id="edit" class="form-control" style="width:42%;padding-right: 3 ...
- [QT] QT5.12 HTTPS请求 TLS initialization failed
#前言 接触到了Qt的网络编程 然后尝试对一个http页面请求获取源码 是可以的 但是当对https界面发出请求的时候总是错误 TLC什么的初始化失败 百度也是没有结果 然后网上各种方法 比如说编译O ...
- EntityFramework中使用sql语句
https://blog.csdn.net/yangyangafan/article/details/77602133 EntityFramework操作数据库谜一般的方便还不用写数据库,但前提是很简 ...
- 【CSS属性#2】
" 目录 一.盒子模型 二.外边距 margin 三.内填充 padding 四.浮动 float 五.清除浮动 clear 六.溢出 overflow 七.定位 position 1. 无 ...
- 计算机二级-C语言-对结构体数据进行求平均值。对结构体数据进行比较处理。
//函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数返回,并将大于平均值的数放在形参y所指数组中,在主函数中输出. //重难点:对结构体数据进行求平均值. #in ...