Files
kubernetes/dev/defectdojo/yaml/chatgpt/defectdojo.yaml
2025-11-27 22:01:44 +01:00

284 lines
5.6 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: defectdojo
namespace: defectdojo
spec:
replicas: 1
selector:
matchLabels:
app: defectdojo
template:
metadata:
labels:
app: defectdojo
spec:
containers:
- name: defectdojo
image: defectdojo/defectdojo:2.31.0
env:
- name: DD_DATABASE_URL
valueFrom:
secretKeyRef:
name: defectdojo-secret
key: DD_DATABASE_URL
- name: DD_ADMIN_USER
valueFrom:
secretKeyRef:
name: defectdojo-secret
key: DD_ADMIN_USER
- name: DD_ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: defectdojo-secret
key: DD_ADMIN_PASSWORD
- name: DD_REDIS_HOST
value: redis
- name: DD_REDIS_PORT
value: "6379"
volumeMounts:
- name: web-storage
mountPath: /app/media
volumes:
- name: web-storage
persistentVolumeClaim:
claimName: dd-web-pvc
---
apiVersion: v1
kind: Service
metadata:
name: defectdojo
namespace: defectdojo
spec:
ports:
- port: 8080
targetPort: 8080
selector:
app: defectdojo
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: celery-worker
namespace: defectdojo
spec:
replicas: 1
selector:
matchLabels:
app: celery-worker
template:
metadata:
labels:
app: celery-worker
spec:
containers:
- name: celery-worker
image: defectdojo/worker:2.31.0
env:
- name: DD_DATABASE_URL
valueFrom:
secretKeyRef:
name: defectdojo-secret
key: DD_DATABASE_URL
- name: DD_REDIS_HOST
value: redis
volumeMounts:
- name: worker-storage
mountPath: /app/media
volumes:
- name: worker-storage
persistentVolumeClaim:
claimName: dd-celeryworker-pvc
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: celery-beat
namespace: defectdojo
spec:
replicas: 1
selector:
matchLabels:
app: celery-beat
template:
metadata:
labels:
app: celery-beat
spec:
containers:
- name: celery-beat
image: defectdojo/beat:2.31.0
env:
- name: DD_DATABASE_URL
valueFrom:
secretKeyRef:
name: defectdojo-secret
key: DD_DATABASE_URL
- name: DD_REDIS_HOST
value: redis
volumeMounts:
- name: beat-storage
mountPath: /app/media
volumes:
- name: beat-storage
persistentVolumeClaim:
claimName: dd-celerybeat-pvc
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis
namespace: defectdojo
spec:
replicas: 1
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: redis:7
volumeMounts:
- mountPath: /data
name: redis-storage
command: ["redis-server", "--appendonly", "yes"]
volumes:
- name: redis-storage
persistentVolumeClaim:
claimName: dd-redis-pvc
---
apiVersion: v1
kind: Service
metadata:
name: redis
namespace: defectdojo
spec:
ports:
- port: 6379
selector:
app: redis
---
apiVersion: v1
kind: Secret
metadata:
name: defectdojo-secret
namespace: defectdojo
type: Opaque
stringData:
DD_DATABASE_URL: "postgres://defectdojo:defectdojo@postgres15.postgres.svc.cluster.local:5432/defectdojo"
DD_ADMIN_USER: "admin"
DD_ADMIN_PASSWORD: "Defectdojo01@"
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-defectdojo-nginx
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteMany
nfs:
server: 192.168.2.110
path: /mnt/nfs_share/defectdojo/nginx
persistentVolumeReclaimPolicy: Retain
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-defectdojo-redis
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteMany
nfs:
server: 192.168.2.110
path: /mnt/nfs_share/defectdojo/redis
persistentVolumeReclaimPolicy: Retain
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-defectdojo-celerybeat
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteMany
nfs:
server: 192.168.2.110
path: /mnt/nfs_share/defectdojo/celerybeat
persistentVolumeReclaimPolicy: Retain
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-defectdojo-celeryworker
spec:
capacity:
storage: 2Gi
accessModes:
- ReadWriteMany
nfs:
server: 192.168.2.110
path: /mnt/nfs_share/defectdojo/celeryworker
persistentVolumeReclaimPolicy: Retain
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-defectdojo-nginx
namespace: defectdojo
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
volumeName: pv-defectdojo-nginx
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-defectdojo-redis
namespace: defectdojo
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
volumeName: pv-defectdojo-redis
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-defectdojo-celerybeat
namespace: defectdojo
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
volumeName: pv-defectdojo-celerybeat
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-defectdojo-celeryworker
namespace: defectdojo
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
volumeName: pv-defectdojo-celeryworker