orderbooks/deploy/k8s/base/deployment-ws-recorder.yaml
2026-04-19 19:17:56 +02:00

78 lines
2.3 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: orderbooks-ws-recorder
namespace: orderbooks
labels:
app.kubernetes.io/name: orderbooks
app.kubernetes.io/part-of: orderbooks
app.kubernetes.io/component: ws-recorder
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/name: orderbooks
app.kubernetes.io/component: ws-recorder
template:
metadata:
labels:
app.kubernetes.io/name: orderbooks
app.kubernetes.io/part-of: orderbooks
app.kubernetes.io/component: ws-recorder
spec:
terminationGracePeriodSeconds: 180
imagePullSecrets:
- name: orderbooks-registry-creds
securityContext:
runAsNonRoot: true
runAsUser: 10001
runAsGroup: 10001
fsGroup: 10001
fsGroupChangePolicy: OnRootMismatch
containers:
- name: ws-recorder
image: registry.doran.133011.xyz/orderbooks:bootstrap
imagePullPolicy: IfNotPresent
command:
- /bin/bash
- /app/scripts/run_polymarket_ws_recorder_loop.sh
env:
- name: ORDERBOOKS_APP_DIR
value: /app
- name: ORDERBOOKS_PYTHON
value: python3
- name: ORDERBOOKS_DATA_DIR
value: /var/lib/orderbooks
- name: ORDERBOOKS_WS_COLLECTOR_CONFIG
value: /etc/orderbooks/polymarket_ws_collector.yaml
volumeMounts:
- name: orderbooks-data
mountPath: /var/lib/orderbooks
- name: collector-config
mountPath: /etc/orderbooks/polymarket_ws_collector.yaml
subPath: polymarket_ws_collector.yaml
readOnly: true
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: "1"
memory: 1Gi
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
volumes:
- name: orderbooks-data
persistentVolumeClaim:
claimName: orderbooks-data
- name: collector-config
configMap:
name: orderbooks-collector-config
items:
- key: polymarket_ws_collector.yaml
path: polymarket_ws_collector.yaml