Files
lpt-infra/README.md
T

85 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# LPT Infrastructure
Kubernetes 部署清单,按环境隔离。
```
lpt-infra/
├── dev/
│ ├── deployment-lpt-fe.yaml
│ ├── deployment-lpt-be.yaml
│ ├── deployment-lpt-ai.yaml
│ ├── service-lpt-fe.yaml
│ ├── service-lpt-be.yaml
│ ├── service-lpt-ai.yaml
│ └── configmap.yaml
├── prod/
│ ├── deployment-lpt-fe.yaml
│ ├── deployment-lpt-be.yaml
│ ├── deployment-lpt-ai.yaml
│ ├── service-lpt-fe.yaml
│ ├── service-lpt-be.yaml
│ ├── service-lpt-ai.yaml
│ └── configmap.yaml
└── README.md
```
## 首次部署
### 1. 创建 namespace
```bash
kubectl create namespace lpt-dev
kubectl create namespace lpt-prod
```
### 2. 创建 Secret(仅一次,由 CI/CD 自动管理)
```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
kubectl apply -f dev/
kubectl apply -f prod/
```
## 日常更新
```bash
cd ~/lpt-infra
git pull
kubectl apply -f dev/
kubectl apply -f prod/
```
## CI/CD
各服务仓库的 Gitea Actions 负责 build + push 镜像,并通过 `kubectl set image` 更新 Deployment。`regcred` 由 workflow 自动 create/update`lpt-secrets` 需手动创建一次后保持不变。
## 验证
```bash
kubectl get pods -n lpt-dev
kubectl get pods -n lpt-prod
```