# LPT Infrastructure Kubernetes 部署清单,按环境隔离。 ``` lpt-infra/ ├── dev/ │ ├── deployment-lpt-fe.yaml │ ├── deployment-lpt-be.yaml │ ├── deployment-lpt-ai.yaml │ ├── service-lpt-ai.yaml │ ├── configmap.yaml │ ├── lpt-secrets.yaml (template) │ └── regcred-secret.yaml (template) ├── prod/ │ ├── deployment-lpt-fe.yaml │ ├── deployment-lpt-be.yaml │ ├── deployment-lpt-ai.yaml │ ├── service-lpt-ai.yaml │ ├── configmap.yaml │ ├── lpt-secrets.yaml (template) │ └── regcred-secret.yaml (template) └── README.md ``` ## 首次部署 ### 1. 创建 namespace ```bash kubectl create namespace lpt-dev kubectl create namespace lpt-prod ``` ### 2. 创建 Secret(模板不包含真实值,需手动创建) ```bash # dev kubectl create secret generic lpt-secrets \ --from-literal=llm-api-key=sk-xxx \ --from-literal=mysql-root-password=xxx \ -n lpt-dev kubectl create secret docker-registry regcred \ --docker-server=192.168.123.199:5000 \ --docker-username=admin \ --docker-password=xxx \ -n lpt-dev # prod kubectl create secret generic lpt-secrets \ --from-literal=llm-api-key=sk-xxx \ --from-literal=mysql-root-password=xxx \ -n lpt-prod kubectl create secret docker-registry regcred \ --docker-server=192.168.123.199:5000 \ --docker-username=admin \ --docker-password=xxx \ -n lpt-prod ``` ### 3. Apply 全部配置 ```bash # dev kubectl apply -f dev/ # prod kubectl apply -f prod/ ``` ## 日常更新(CI/CD) CI/CD 流程使用 `kubectl set image` 更新镜像,仓库内 `imagePullSecrets` 已配置,无需额外操作。 ```bash kubectl set image deployment/lpt-fe lpt-fe=192.168.123.199:5000/lpt-fe: -n lpt-dev kubectl set image deployment/lpt-be lpt-be=192.168.123.199:5000/lpt-be: -n lpt-dev kubectl set image deployment/lpt-ai lpt-ai=192.168.123.199:5000/lpt-ai: -n lpt-dev ``` ## 验证 ```bash kubectl get pods -n lpt-dev kubectl get pods -n lpt-prod ```