Files
cursor-devbox/deploy/020-statefulset.yaml
T

114 lines
3.0 KiB
YAML
Raw Normal View History

# StatefulSet: OpenSSH workspace + DinD sidecar.
# Image tag is updated by Flux ImageUpdateAutomation (SHA-bearing run_number-sha tags).
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: cursor-devbox
namespace: cursor-devbox
spec:
serviceName: cursor-devbox
replicas: 1
selector:
matchLabels:
app: cursor-devbox
template:
metadata:
labels:
app: cursor-devbox
annotations:
linkerd.io/inject: disabled
spec:
terminationGracePeriodSeconds: 30
imagePullSecrets:
- name: dcr-registry-auth-ro
containers:
- name: ssh
image: dcr.trinitysan.by/infra/cursor-devbox:latest # {"$imagepolicy": "flux-system:cursor-devbox"}
imagePullPolicy: IfNotPresent
ports:
- name: ssh
containerPort: 22
- name: http
containerPort: 8080
env:
- name: DOCKER_HOST
value: tcp://127.0.0.1:2375
- name: HOME
value: /home/developer
securityContext:
allowPrivilegeEscalation: true
capabilities:
add:
- SYS_PTRACE
resources:
requests:
cpu: "750m"
memory: 3Gi
limits:
cpu: "4"
memory: 8Gi
readinessProbe:
tcpSocket:
port: ssh
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
tcpSocket:
port: ssh
initialDelaySeconds: 15
periodSeconds: 20
volumeMounts:
- name: home
mountPath: /home/developer
subPath: home
- name: authorized-keys
mountPath: /etc/ssh-authorized-keys
readOnly: true
- name: dind
image: docker:27-dind
imagePullPolicy: IfNotPresent
args:
- --host=tcp://0.0.0.0:2375
- --tls=false
env:
- name: DOCKER_TLS_CERTDIR
value: ""
securityContext:
privileged: true
resources:
requests:
cpu: "250m"
memory: 1Gi
limits:
cpu: "2"
memory: 4Gi
readinessProbe:
tcpSocket:
port: 2375
initialDelaySeconds: 5
periodSeconds: 10
volumeMounts:
- name: home
mountPath: /var/lib/docker
subPath: docker
- name: dind-run
mountPath: /var/run
volumes:
- name: authorized-keys
configMap:
name: cursor-devbox-authorized-keys
- name: dind-run
emptyDir: {}
volumeClaimTemplates:
- metadata:
name: home
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-storage
resources:
requests:
storage: 30Gi