apiVersion: apps/v1 kind: Deployment metadata: name: loki namespace: monitoring spec: replicas: 1 selector: matchLabels: app: loki template: metadata: labels: app: loki spec: containers: - name: loki image: grafana/loki:3 args: ["-config.file=/etc/loki/config/config.yaml"] ports: - containerPort: 3100 volumeMounts: - name: config mountPath: /etc/loki/config - name: loki-storage mountPath: /tmp/loki volumes: - name: config configMap: name: loki-config - name: loki-storage emptyDir: medium: Memory --- apiVersion: v1 kind: ConfigMap metadata: name: loki-config namespace: monitoring data: config.yaml: | auth_enabled: true server: http_listen_port: 3100 common: ring: instance_addr: 127.0.0.1 kvstore: store: inmemory replication_factor: 1 path_prefix: /tmp/loki querier: multi_tenant_queries_enabled: true schema_config: configs: - from: "2024-01-01" store: tsdb object_store: filesystem schema: v13 index: prefix: index_ period: 24h storage_config: tsdb_shipper: active_index_directory: /tmp/loki/index cache_location: /tmp/loki/cache filesystem: directory: /tmp/loki/chunks limits_config: allow_structured_metadata: true retention_period: 0 ingester: lifecycler: ring: kvstore: store: inmemory replication_factor: 1 chunk_idle_period: 1m max_chunk_age: 5m chunk_target_size: 1536000 compactor: retention_enabled: false --- apiVersion: v1 kind: Service metadata: name: loki namespace: monitoring spec: ports: - port: 3100 targetPort: 3100 name: http selector: app: loki