# Single-process Loki for the two-node project cluster. --- apiVersion: v1 kind: ConfigMap metadata: name: loki labels: app.kubernetes.io/name: loki data: loki.yaml: | auth_enabled: false server: http_listen_port: 3100 common: path_prefix: /var/loki replication_factor: 1 ring: kvstore: store: inmemory schema_config: configs: - from: 2024-01-01 store: tsdb object_store: filesystem schema: v13 index: prefix: index_ period: 24h storage_config: filesystem: directory: /var/loki/chunks analytics: reporting_enabled: false --- apiVersion: v1 kind: Service metadata: name: loki labels: app.kubernetes.io/name: loki spec: selector: app.kubernetes.io/name: loki ports: - name: http port: 3100 targetPort: http --- apiVersion: apps/v1 kind: Deployment metadata: name: loki labels: app.kubernetes.io/name: loki spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: loki template: metadata: labels: app.kubernetes.io/name: loki spec: automountServiceAccountToken: false securityContext: runAsUser: 10001 runAsGroup: 10001 runAsNonRoot: true fsGroup: 10001 seccompProfile: type: RuntimeDefault containers: - name: loki image: grafana/loki:3.7.6 args: ["-config.file=/etc/loki/loki.yaml"] ports: - name: http containerPort: 3100 readinessProbe: httpGet: path: /ready port: http initialDelaySeconds: 5 periodSeconds: 5 volumeMounts: - name: config mountPath: /etc/loki readOnly: true - name: data mountPath: /var/loki securityContext: allowPrivilegeEscalation: false capabilities: drop: ["ALL"] readOnlyRootFilesystem: true resources: requests: cpu: 25m memory: 128Mi limits: memory: 384Mi volumes: - name: config configMap: name: loki - name: data emptyDir: {}