38 lines
1.6 KiB
YAML
38 lines
1.6 KiB
YAML
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: todo-data-manager # Имя StatefulSet
|
|
namespace: todo-app-ns-v2 # Пространство имен
|
|
spec:
|
|
serviceName: "todo-data-service" # Сервис для StatefulSet
|
|
replicas: 1 # Количество реплик
|
|
selector:
|
|
matchLabels:
|
|
app: todo-data # Лейбл для выборки подов
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: todo-data # Лейблы для подов
|
|
spec:
|
|
imagePullSecrets:
|
|
- name: my-docker-secret # Секрет для загрузки образа Docker
|
|
containers:
|
|
- name: todo-data # Имя контейнера
|
|
image: jank8000/todo-data-image:latest # Docker образ
|
|
ports:
|
|
- containerPort: 8080 # Порт контейнера
|
|
volumeMounts:
|
|
- name: todo-app-pvc # PVC, которое будет монтироваться
|
|
mountPath: /data # Место, где данные будут храниться в контейнере
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: todo-app-pvc # PVC для хранения данных
|
|
namespace: todo-app-ns-v2 # Пространство имен для PVC
|
|
spec:
|
|
accessModes:
|
|
- ReadWriteOnce # Режим доступа к PVC
|
|
resources:
|
|
requests:
|
|
storage: 1Gi # Запрос на 1Gi хранилища
|
|
volumeMode: Filesystem # Монтирование как файловая система
|