69 lines
1.8 KiB
YAML
69 lines
1.8 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: datalab-lite
|
|
namespace: datalab-lite
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: datalab-lite
|
|
version: "1.0"
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: datalab-lite
|
|
version: "1.0"
|
|
spec:
|
|
serviceAccountName: datalab-lite-sa
|
|
initContainers:
|
|
- name: install-deps
|
|
image: python:3.11-slim
|
|
command:
|
|
- pip
|
|
- install
|
|
- --target=/app/deps
|
|
- fastapi
|
|
- uvicorn
|
|
- httpx
|
|
- python-jose[cryptography]
|
|
- kubernetes
|
|
- minio
|
|
- python-multipart
|
|
- jinja2
|
|
- requests
|
|
volumeMounts:
|
|
- mountPath: /app/deps
|
|
name: deps
|
|
containers:
|
|
- name: datalab-lite
|
|
image: python:3.11-slim
|
|
command:
|
|
- sh
|
|
- -c
|
|
- python3 -c "import urllib.request; urllib.request.urlretrieve('https://dl.min.io/client/mc/release/linux-amd64/mc', '/usr/local/bin/mc')" && chmod +x /usr/local/bin/mc && mc alias set minio-local https://minio.lab.leadwire.dev admin Minio@Leadwire2026! --insecure && python -m uvicorn main:app --host 0.0.0.0 --port 8000
|
|
env:
|
|
- name: PYTHONPATH
|
|
value: /app/deps
|
|
- name: CLIENT_SECRET
|
|
value: ""
|
|
ports:
|
|
- containerPort: 8000
|
|
workingDir: /app/code
|
|
volumeMounts:
|
|
- mountPath: /app/code
|
|
name: code
|
|
- mountPath: /app/deps
|
|
name: deps
|
|
- mountPath: /app/code/templates
|
|
name: templates
|
|
volumes:
|
|
- name: code
|
|
configMap:
|
|
name: datalab-lite-code
|
|
- name: deps
|
|
emptyDir: {}
|
|
- name: templates
|
|
configMap:
|
|
name: datalab-lite-templates
|