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下的解决方 ...
随机推荐
- CentOS和Windows下配置MySQL远程访问的教程
CentOS和Windows下配置MySQL远程访问的教程 一.前言 由于实验在云服务器上跑的结果不是很理想.所以,现在切换到局域网服务器.因此,需要重新配置 Windows 服务器和 CentO ...
- Codeforces-1084C
title: Codeforces-1084C date: 2018-12-13 16:02:04 tags: acm 刷题 categories: Codeforces 概述 好久没写博客了,,,最 ...
- Xamarin iOS教程之视图显示图像
Xamarin iOS教程之视图显示图像 Xamarin iOS显示图像 在主视图中显示一个图像,可以让开发者的应用程序变的更有趣,例如,在一些应用程序开始运行时,都会通过图像来显示此应用程序的玩法或 ...
- Xamarin iOS教程之警告视图
Xamarin iOS教程之警告视图 Xamarin iOS警告视图 如果需要向用户显示一条非常重要的消息时,警告视图(UIAlertView类)就可以派上用场了.它的功能是把需要注意的信息显示给用户 ...
- 膨胀卷积与IDCNN
Dilation 卷积,也被称为:空洞卷积.膨胀卷积. 一.一般的卷积操作: 首先,可以通过动态图,理解正常卷积的过程: 如上图,可以看到卷积操作. 对于CNN结构,通常包括如下部分: 输入层 (in ...
- lupgu P3950 部落冲突
题目链接 luogu P3950 部落冲突 题解 树剖线段树可以 lct还行 代码 #include<cstdio> #include<algorithm> inline in ...
- NOIP练习赛题目3
魔兽争霸 难度级别:C: 运行时间限制:1000ms: 运行空间限制:262144KB: 代码长度限制:2000000B 试题描述 小x正在销魂地玩魔兽他正控制着死亡骑士和n个食尸鬼(编号1-n)去打 ...
- 理解%r和%s的区别
理解%r和%s的区别 %r会重现所表达的对象,%s会将所有转成字符串 eg1: print('i am %s years old' % 22) print('i am %r years old' % ...
- Codeforces Round #397 by Kaspersky Lab and Barcelona Bootcamp (Div. 1 + Div. 2 combined) F. Souvenirs 线段树套set
F. Souvenirs 题目连接: http://codeforces.com/contest/765/problem/F Description Artsem is on vacation and ...
- 读think in java有感
.... 2.2.1 保存到什么地方 程序运行时,我们最好对数据保存到什么地方做到心中有数.特别要注意的是内存的分配.有六个地方都可以保存数据: (1) 寄存器.这是最快的保存区域,因为它位于和其他所 ...
