环境配置
单机部署 k8s 需要安装 minikube,前往 github release 下载
macos:
brew install minikube
初始化k8s环境
minikube start
安装vscode插件:
编写部署实例配置
示例:
apiVersion: apps/v1 kind: Deployment metadata: name: nest-api-blog namespace: default labels: app: nest-api-blog spec: selector: matchLabels: app: nest-api-blog replicas: 1 strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: labels: app: nest-api-blog spec: containers: - name: nest-api-blog image: saber2pr/next-ssr-blog:v1.6.2 resources: requests: cpu: 100m memory: 100Mi limits: cpu: 100m memory: 100Mi livenessProbe: httpGet: path: / port: 3000 initialDelaySeconds: 5 timeoutSeconds: 5 successThreshold: 1 failureThreshold: 3 periodSeconds: 10 readinessProbe: httpGet: path: / port: 3000 initialDelaySeconds: 5 timeoutSeconds: 2 successThreshold: 1 failureThreshold: 3 periodSeconds: 10 ports: - containerPort: 3000 name: nest-api-blog restartPolicy: Always
使用 k8s 部署
使用 apply 创建实例:
kubectl apply -f ./nest-api-blog.yaml
pod 常用命令
kubectl get pod # 查看pod列表及运行状态
deployment 常用命令
kubectl get deployment # 查看部署应用列表 kubectl delete deployment <app-name> # 下线应用
查看集群服务列表
kubectl get service # 查看集群内IP/外部IP/端口