# python_test **Repository Path**: cplinux98/python_test ## Basic Information - **Project Name**: python_test - **Description**: 测试python工作流程 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-02-26 - **Last Updated**: 2023-03-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 创建测试环境 ## 安装docker ```bash apt-get update apt-get -y install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" apt-get -y update apt-get -y install docker-ce ``` ## 安装minikube ```bash curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 install minikube-linux-amd64 /usr/local/bin/minikube ``` ## 使用minikube生成一个K8S集群 ```bash minikube start --driver=docker --container-runtime=containerd --image-mirror-country=cn --force ``` ```text root@minikube:~# kubectl get pods -A NAMESPACE NAME READY STATUS RESTARTS AGE kube-system coredns-787d4945fb-5ghzm 1/1 Running 0 59s kube-system etcd-minikube 1/1 Running 0 73s kube-system kindnet-ghwxt 1/1 Running 0 59s kube-system kube-apiserver-minikube 1/1 Running 0 68s kube-system kube-controller-manager-minikube 1/1 Running 0 74s kube-system kube-proxy-vlp4l 1/1 Running 0 59s kube-system kube-scheduler-minikube 1/1 Running 0 69s kube-system storage-provisioner 1/1 Running 0 71s ``` ## 配置kubectl别名 ```bash echo 'alias kubectl="minikube kubectl --"' >> ~/.bashrc source ~/.bashrc ``` ## 使用kube-proxy把dashboard代理出来 ```bash nohup minikube kubectl -- proxy --address='0.0.0.0' --accept-hosts='^*$' --port=8090 & ``` ## 使用minikube启动一个dashboard ```bash minikube dashboard ``` ```text # 原始url,端口会随机 http://127.0.0.1:37721/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ # 替换成主机的地址和代理的端口 http://192.168.10.61:8090/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ ``` # 参考链接 - https://github.com/kubernetes-client/python/tree/master/examples - https://www.modb.pro/db/438213 - https://support.huaweicloud.com/sdkreference-cci/cci_09_0003.html - https://juejin.cn/post/7102354485057421326 # 项目目标 1. 能够使用python对K8S进行deployment的pod管理 - 启动 - 配置 - 日志查看 - 扩容/缩容 2. 能够联动git对pod里面的内容进行动态部署 3. 使用python对K8S节点上的images进行管理 # 最终目的 使用python的fastapi + vue 实现基于git仓库进行任务代码管理,使运行任务在K8S上的任务运行平台,且可以在页面上根据环境变量来配置任务参数