Files
kubernetes/prod/nodejs/mongodb.yaml
T
2026-05-31 16:07:30 +02:00

91 lines
1.7 KiB
YAML
Executable File

apiVersion: apps/v1
kind: ReplicaSet
metadata:
labels:
app: mongo
name: mongo
namespace: nodejs
spec:
replicas: 1
selector:
matchLabels:
app: mongo
template:
metadata:
labels:
app: mongo
spec:
nodeSelector:
mongo-node: "true" # Runs only on nodes with this label
containers:
- image: mongodb/mongodb-community-server
name: mongodb
imagePullPolicy: Always
env:
- name: MONGODB_INITDB_ROOT_USERNAME
value: admin
- name: MONGODB_INITDB_ROOT_PASSWORD
value: Mongodb01
volumeMounts:
- name: mongo-data-dir
mountPath: /data/db
resources:
limits:
cpu: 500m
requests:
cpu: 200m
volumes:
- name: mongo-data-dir
persistentVolumeClaim:
claimName: nodejs-pvc
---
apiVersion: v1
kind: Service
metadata:
labels:
app: mongo
name: mongo
namespace: nodejs
spec:
ports:
- port: 27017
protocol: TCP
targetPort: 27017
selector:
app: mongo
type: LoadBalancer
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: nodejs-pv
spec:
storageClassName: ""
capacity:
storage: 1Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
mountOptions:
- hard
- nfsvers=4.1
nfs:
server: 192.168.2.111
path: /mnt/nfs_share/prod/mongodb
readOnly: false
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nodejs-pvc
namespace: nodejs
spec:
storageClassName: ""
volumeName: nodejs-pv
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 1Gi