airlabs-manage/k8s/backend-deployment-prod.yaml
zyc a74deb5c59
All checks were successful
Build and Deploy Backend / build-and-deploy (push) Successful in 1m24s
Build and Deploy Web / build-and-deploy (push) Successful in 52s
fix ngtinx
2026-02-12 15:16:21 +08:00

71 lines
1.6 KiB
YAML

# SQLite 持久化存储
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: airlabs-manage-sqlite-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: airlabs-manage-backend
labels:
app: airlabs-manage-backend
spec:
replicas: 1
selector:
matchLabels:
app: airlabs-manage-backend
template:
metadata:
labels:
app: airlabs-manage-backend
spec:
containers:
- name: airlabs-manage-backend
image: ${CI_REGISTRY_IMAGE}/backend:latest
imagePullPolicy: Always
ports:
- containerPort: 8000
env:
# SQLite 存储在持久卷中
- name: DATABASE_URL
value: "sqlite:////app/data/airlabs.db"
# 生产环境 JWT 密钥(部署前请修改)
- name: SECRET_KEY
value: "Ui5-xEvtAhKRDtlXKzDfd7TElsVZFUhakff0qcjn8jU"
# CORS 允许的域名
- name: CORS_ORIGINS
value: "https://airlabs-manage-web.airlabs.art"
volumeMounts:
- name: sqlite-data
mountPath: /app/data
resources:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "512Mi"
cpu: "500m"
volumes:
- name: sqlite-data
persistentVolumeClaim:
claimName: airlabs-manage-sqlite-data
---
apiVersion: v1
kind: Service
metadata:
name: airlabs-manage-backend
spec:
selector:
app: airlabs-manage-backend
ports:
- protocol: TCP
port: 8000
targetPort: 8000