Mac下的Docker及Kubernetes(k8s)本地环境搭建与应用部署、管理界面kubernetes-dashboard
mac安装docker:
brew cask install docker
当然也可以直接去官网下载docker的pkg文件安装
mac的docker国内镜像:网易的镜像地址:http://hub-mirror.c.163.com。

下载kubernetes
如图所示,mac新版本的docker自带Kubernetes,Enable后就会自动开启下载,需要注意的是,下载的时候需要翻墙,解决办法:代理;寻找国内镜像
下载一般要很久,总概要下载10+个镜像,大约在几个小时内。观察镜像是否增加,判断是否在下载中。
参考下面两篇文章即可:
https://github.com/maguowei/k8s-docker-for-mac(https://github.com/shengulong/k8s-docker-for-mac)
https://github.com/kubernetes/dashboard/wiki/Creating-sample-user
注意 https://github.com/maguowei/k8s-docker-for-mac里的文件images最后不要有空行。
kubectl cluster-info

kubectl get nodes

# 开启本机访问代理
$ kubectl proxy
通过下面的连接访问 Dashboard: http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
kubectl apply -f dashboard-adminuser.yaml Create Service Account
We are creating Service Account with name admin-user in namespace kube-system first.
dashboard-adminuser.yaml 内容如下:
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
通过如下命令获取token值:
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
Helm就相当于kubernetes环境下的yum包管理工具。
# 用 homebrew 安装 Helm
$ brew install kubernetes-helm # 初始化本地 CLI 并 将 Tiller 安装到 Kubernetes cluster
$ helm init # 更新本地 charts repo
$ helm repo update # 安装 mysql chart
$ helm install --name my-mysql stable/mysql # 删除 mysql
$ helm delete my-mysql # 删除 mysql 并释放该名字以便后续使用
$ helm delete --purge my-mysql
web界面:根据浏览器的中英文设置,自动转换中英文界面

注:
解释下三个配置的含义:
1、开启k8s功能
2、使用k8s作为默认编排器,见下图
3、显示k8s内部的容器,这样k8s启动的时候,执行docker ps就可以看到k8s本身需要启动的容器

最后给下成功启动k8s的具体成功步骤:
环境:

1、设置镜像:

2、使用默认代理配置:因为本地没有开启代理,所以这里的系统代理就是没有代理

3、关键的一步:配置k8s所需要的镜像(之前成功启动过,记录了k8s启动所需的镜像),然后执行脚本:./load_images.sh可以快速的安装完镜像,时间不超过5分钟。
➜ k8s-docker-for-mac git:(master) ✗ cat images
k8s.gcr.io/kube-proxy:v1.13.0=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.13.0
k8s.gcr.io/kube-controller-manager:v1.13.0=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.13.0
k8s.gcr.io/kube-scheduler:v1.13.0=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.13.0
k8s.gcr.io/kube-apiserver:v1.13.0=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.13.0
k8s.gcr.io/coredns:1.2.=registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.2.
k8s.gcr.io/pause:3.1=registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1
k8s.gcr.io/etcd:3.2.=registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.2.
k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1=registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.10.1
gcr.io/kubernetes-helm/tiller:v2.12.1=registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.12.1
k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64:1.14.=registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.
k8s.gcr.io/k8s-dns-sidecar-amd64:1.14.=registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-sidecar-amd64:1.14.
k8s.gcr.io/k8s-dns-kube-dns-amd64:1.14.=registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-kube-dns-amd64:1.14.
docker/kube-compose-controller:v0.4.12=registry.cn-hangzhou.aliyuncs.com/k8s-service/kube-compose-controller:v0.4.12
docker/kube-compose-api-server:v0.4.12=registry.cn-hangzhou.aliyuncs.com/k8s-service/kube-compose-api-server:v0.4.12
k8s.gcr.io/kube-proxy-amd64:v1.10.11=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy-amd64:v1.10.11
k8s.gcr.io/kube-apiserver-amd64:v1.10.11=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver-amd64:v1.10.11
k8s.gcr.io/kube-controller-manager-amd64:v1.10.11=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager-amd64:v1.10.11
k8s.gcr.io/kube-scheduler-amd64:v1.10.11=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler-amd64:v1.10.11
k8s.gcr.io/etcd-amd64:3.1.=registry.cn-hangzhou.aliyuncs.com/google_containers/etcd-amd64:3.1.
k8s.gcr.io/pause-amd64:3.1=registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64:3.1
➜ k8s-docker-for-mac git:(master) ✗
4、最后一步,配置如下两项,然后等待k8s启动,大约3分钟之内。不要在把安装k8s的过程放在后台,就在前台盯着好了,这样可以感受到进展情况

镜像及版本列表:

参考:
1、http://www.runoob.com/docker/macos-docker-install.html
2、https://kubernetes.io/zh/docs/user-guide/docker-cli-to-kubectl/
3、https://www.kubernetes.org.cn/doc-5
4、https://yeasy.gitbooks.io/docker_practice/kubernetes/quickstart.html
Mac下的Docker及Kubernetes(k8s)本地环境搭建与应用部署、管理界面kubernetes-dashboard的更多相关文章
- CC2B本地环境搭建步骤及部署问题解决
由于最近的项目是之前没接触过的netbeans+glassfish,记录一下最近在工作中搭建本地环境的步骤及遇到的一些问题解决方法: 1.配置java jdk 此过程中遇到一个问题就是在配置系统环境变 ...
- Mac下Appnium的Android的UI自动化环境搭建
1. 安装jdk:略 检查是否安装:执行命令java -version admindeMacBook-Pro-2:~ $ java -version java version "1.8.0_ ...
- mac下通过docker搭建LEMP环境
在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew up ...
- Docker下kafka学习三部曲之二:本地环境搭建
在上一章< Docker下kafka学习,三部曲之一:极速体验kafka>中我们快速体验了kafka的消息分发和订阅功能,但是对环境搭建的印象仅仅是执行了几个命令和脚本,本章我们通过实战来 ...
- Docker&Kubernetes沙龙干货集锦:容器集群管理利器kubernetes详谈-CSDN.NET
Docker&Kubernetes沙龙干货集锦:容器集群管理利器kubernetes详谈-CSDN.NET undefined Package - crawler undefined 科学网- ...
- (一)windows7下solr7.1.0默认jetty服务器环境搭建
windows7下solr7.1.0默认jetty服务器环境搭建 1.下载solr solr7官网地址:http://lucene.apache.org/solr/ jdk8官网地址:http://w ...
- Sonar本地环境搭建
一个新项目准备上线提测了,为了在提测之前做一下代码走查,同时了解项目目前的质量情况,就在本地搭建了一套sonar环境.搭建的过程中遇到了很多问题,sonar官方已不再维护Eclipse的svn插件,所 ...
- mac下安装git,并将本地的项目上传到github
mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...
- Mac下 Visual VM 无法检测到本地的Java进程
我下载的是VisualVM1.4 下载完成之后,在左边栏Local哪里只有VisualVM自己的进程. 我本地启动的eclipse和intelliJ都没有检测到. 网上查阅后都是Window下的解决方 ...
随机推荐
- spark web ui中的skipped的含义
顾名思义,跳出的意思啦. 例如如图: skipped的stages代表是已经执行过了.所以不需要再执行了. 如何,你有一个 testRdd.然后先做 testRdd.Filter("xxx& ...
- Selenium Webdriver概述(转)
Selenium Webdriver https://www.yiibai.com/selenium/selenium_overview.html# webdriver自动化俗称Selenium 2. ...
- Hive项目开发环境搭建(Eclipse\MyEclipse + Maven)
写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...
- Python3 反向传播神经网络-Min-Batch(根据吴恩达课程讲解编写)
# -*- coding: utf-8 -*- """ Created on Sat Jan 20 13:47:54 2018 @author: markli " ...
- js冲刺一下
js中__proto__和prototype的区别和关系 1.对象有属性__proto__,指向该对象的构造函数的原型对象. 2.方法除了有属性__proto__,还有属性prototype,prot ...
- CSS3利用背景渐变和background-size配合完成渐变与条纹效果[持续更新中...]
1.不等垂直条纹. <!-- 不等垂直条纹 --> <div class="div1"></div>div1 div{ width: 200px ...
- Struts 2 学习笔记
1.Struts2 jar包 struts2-core-2.1.8.1 struts2的核心jar包,不可缺少的 xwork-core-2.1.6 xwork的核心包,由于Struts2是由xwork ...
- 详解django三种文件下载方式
推荐使用FileResponse,从源码中可以看出FileResponse是StreamingHttpResponse的子类,内部使用迭代器进行数据流传输. 在实际的项目中很多时候需要用到下载功能,如 ...
- 添加第一个控制器(Controllers)
在MVC体系架构中,输入请求是由控制器Controller来处理的(负责处理浏览器请求,并作出响应).在ASP.NET MVC中Controller本身是一个类(Class)通常继承于System.W ...
- hdu 4612 边双联通 ***
题意:有N 个点,M条边,加一条边,求割边最少.(有重边) 链接:点我 先求双连通分量,缩点形成一个生成树,然后求这个的直径,割边-直径即是答案 #pragma comment(linker, &qu ...
