在docker中部署k8s的方法
K8s
k8s是一个cluster集群,在cluster集群中有多个Namespace,一个namespace下又有多个pods,一个pod下有多个container。
这篇文章带你从头在docker中部署k8s。
docker下载
docker安装 docker: https://docs.docker.com/docker-for-mac/install/
在docker中使用k8s: https://docs.docker.com/desktop/kubernetes/
在docker设置中,点选如下图的两个。

k8s 相关命令
在这一小节会简单介绍通过命令行控制k8s的相关shell命令。
获取相关的namespace信息
kubectl get namespace
获取default下的相关的pod信息,如果没有–namespace参数则获得所有的namespace信息
Kebectl get pod --namespace=default
获取pod的shell
Kubectl exec -it pod bash
通过网页API显示
如何在网页中直观的显示k8s集群的信息。
首选配置代理
Kubectl proxy
这时打开网页
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login

提示需要输入token,输入命令,并将得到的token粘贴到token中。
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')
此时,进入到k8s的网页中,

点开相应的pods,可以选择namespace。

点击pod后面的三个点,点击执行,便可进入到当前pod的shell中。
此刻,点开你会发现并不能运行相关的命令。
需要配置相关的yaml文件。
yaml文件格式
在这一小节给出yaml的文件格式。
apiVersion: v1
kind: Pod
metadata:
name: pod1
labels:
app: web
namespace: yournamespace
spec:
containers:
- name: front-end
image: ngnix
ports:
- containerPort: 80
- name: flaskapp-demo
image: jcdemo/flaskapp
ports:
- containerPort: 5000
这代表在yournamespace的pod1下建立两个container,一个名为front-end,镜像为ngnix,一个名为flaskapp-demo,镜像为jcdemo/flaskapp。
再给出一个yaml的例子
apiVersion: v1
kind: Pod
metadata:
name: pod3
labels:
app: web
namespace: yournamespace
spec:
containers:
- name: pod-redis
image: docker.io/redis
ports:
- containerPort: 5000
这代表在yournamespace的pod3下建立一个名为pod-redis的container,镜像为docker.io/redis.
您可能感兴趣的文章
- 01-12Docker部署rabbitmq遇到的两个问题
- 01-12最新虚拟机VMware 14安装教程
- 01-12使用docker compose安装harbor私有仓库的详细教程
- 01-12Windows下Docker安装各种软件的详细过程
- 01-12seata docker 高可用部署的详细介绍
- 01-12浅谈Tomcat多层容器的设计
- 01-12Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤
- 01-12解决vscode docker插件docker.socket权限问题
- 01-12Docker中运行PostgreSQL并推荐几款连接工具
- 01-12Docker核心原理之 Cgroup详解


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-23linux中ftp无法访问怎么办
- 12-11docker存储目录迁移示例教程
- 12-10docker start启动容器后仍然exit状态的解决
- 12-10Linux下如何安装Logstash
- 12-05Docker安装Jenkins全过程
- 01-05Shell脚本去重的几种方法实例
- 12-22kvm虚拟机配置NAT端口转发的实现方法
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法




